Graal Forums  

Go Back   Graal Forums > Development Forums > Level Design
FAQ Members List Calendar Today's Posts

Reply
 
Thread Tools Search this Thread Display Modes
  #31  
Old 11-26-2011, 02:37 AM
Draenin Draenin is offline
Magnificent Bastard
Draenin's Avatar
Join Date: Dec 2004
Location: Bermuda Triangle
Posts: 6,790
Draenin has much to be proud ofDraenin has much to be proud ofDraenin has much to be proud ofDraenin has much to be proud ofDraenin has much to be proud ofDraenin has much to be proud of
Send a message via AIM to Draenin Send a message via MSN to Draenin Send a message via Yahoo to Draenin
Will this work on terrain maps?
Reply With Quote
  #32  
Old 11-26-2011, 02:41 AM
cbk1994 cbk1994 is offline
the fake one
cbk1994's Avatar
Join Date: Mar 2003
Location: San Francisco
Posts: 10,718
cbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond repute
Send a message via AIM to cbk1994
Quote:
Originally Posted by Draenin View Post
Will this work on terrain maps?
Nope.
__________________
Reply With Quote
  #33  
Old 11-26-2011, 03:13 AM
DustyPorViva DustyPorViva is offline
Will work for food. Maybe
DustyPorViva's Avatar
Join Date: Sep 2003
Location: Maryland, USA
Posts: 9,589
DustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond repute
Send a message via AIM to DustyPorViva Send a message via MSN to DustyPorViva
Quote:
Originally Posted by Draenin View Post
Will this work on terrain maps?
Stefan uses some special licensed generator to render 3D terrain, something I would never be able to emulate. Also, the terrain gmaps don't store level data.

At least because of the nature of 3D terrains using the GraalEditor's mapping function the maps don't end up looking too bad.
Reply With Quote
  #34  
Old 11-26-2011, 04:40 AM
DustyPorViva DustyPorViva is offline
Will work for food. Maybe
DustyPorViva's Avatar
Join Date: Sep 2003
Location: Maryland, USA
Posts: 9,589
DustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond repute
Send a message via AIM to DustyPorViva Send a message via MSN to DustyPorViva
New update, and I think as far as features go I'm done. I can't think of much more to add.

New Features
> The choice to disable or enable rendering and parsing(meaning quicker generation) of NPCs. It will still scan for addtiledefs.
> Saving of checkbox options as well now.
> Addition of error logging, you can find the logs in errorLog.txt if anything goes wrong. It will write a stack trace under the level it encountered the error in, and attempt to narrow it down to a specific function.
> Definitions for join classes. You can now assign images, and even ganis, to join classes. When the parser encounters a join command it will scan ClassImages.txt for the appropriate information to render the NPC. Check the text file for more information.
> Fixed more bugs pertaining to parsing. If you were having problems with it hanging on specific levels this should help. Before it was trying to parse specific variables(this.dir = 2) but was also detecting modifiers like this.dir += 2; and encountering parsing problems, causing it to hang. Fixed it by only allowing = and no operation characters to the left or right.

Edit: Okay, finally got it all sorted(I hope). I think that makes all features complete, and only debugging left to do, and hopefully I've gotten rid of a lot. When most of the bugs are fixed I'll have Crono update the original post with explanations and such and the latest files.
Attached Files
File Type: zip NW2PNG2.0.zip (246.7 KB, 1420 views)

Last edited by DustyPorViva; 11-26-2011 at 07:13 AM..
Reply With Quote
  #35  
Old 11-26-2011, 01:14 PM
ffcmike ffcmike is offline
Banned
Join Date: Jul 2004
Location: London
Posts: 2,029
ffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond repute
Send a message via AIM to ffcmike Send a message via MSN to ffcmike
Everything appears to be running fairly smoothly now, class assigning works aswell.

One new problem which might only apply to me is that a lot of characters are facing the wrong direction, it seems to be because I also have these NPCs using a variable of "this.dirturn = true;".

Another noticable error is where I was using a specific frame of a gani:
Quote:
Warning : Couldn't render the gani classic_player_walk_01[3].gani
Something else I can't figure out though is where candle.mng is rendering as what appears to be some type of head, which is a bit odd because MNGs aren't supported and this head image isn't used anywhere else on the map:



This could well be the result of setimgpart: this.setimgpart("candle.mng",0,0,32,16);

A couple of things which might be useful, is the detection of a custom variable within an NPC specifically to avoid being rendered within this program, and the ability to set a different sprites.png as some servers may use a custom one, in my case the only difference is semi-transparent shadows. Being able to assign ganis to classes would be cool too.

I've attached the error log incase there's anything of interest.
Attached Files
File Type: txt errorLog.txt (37.9 KB, 1526 views)
Reply With Quote
  #36  
Old 11-26-2011, 03:13 PM
DustyPorViva DustyPorViva is offline
Will work for food. Maybe
DustyPorViva's Avatar
Join Date: Sep 2003
Location: Maryland, USA
Posts: 9,589
DustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond repute
Send a message via AIM to DustyPorViva Send a message via MSN to DustyPorViva
Quote:
Originally Posted by ffcmike View Post
One new problem which might only apply to me is that a lot of characters are facing the wrong direction, it seems to be because I also have these NPCs using a variable of "this.dirturn = true;"
Hmm, I don't think that would be parsed into the direction, but I'll take a look into it.

Quote:
Originally Posted by ffcmike View Post
Another noticable error is where I was using a specific frame of a gani:
I anticipated that, but I didn't think many people used that so I didn't bother, I guess I'll implement it However, my gani parsing only parses the first frame so I won't be able to make it parse the specified frame, sorry!


Quote:
Originally Posted by ffcmike View Post
Something else I can't figure out though is where candle.mng is rendering as what appears to be some type of head, which is a bit odd because MNGs aren't supported and this head image isn't used anywhere else on the map:



This could well be the result of setimgpart: this.setimgpart("candle.mng",0,0,32,16);
MNG's aren't supported so I'm not sure what's going on. Hopefully just ignoring images that are MNG will fix this.

Quote:
Originally Posted by ffcmike View Post
A couple of things which might be useful, is the detection of a custom variable within an NPC specifically to avoid being rendered within this program,
hide and hide() maybe? However if I use hide chances are it'll get parsed when it's not supposed to, such as
PHP Code:
function onPlayertouchsme() {
  
hide();
  
sleep(3);
  
show();

Would probably get hidden, and I can't think of another way to fix this other than doing some complex script parsing. If you'd like a custom variable like this.maprender = false; I could easily do that.
Quote:
Originally Posted by ffcmike View Post
and the ability to set a different sprites.png as some servers may use a custom one, in my case the only difference is semi-transparent shadows.
I also anticipated this, but I figured the only thing it affected were shadows. Do you consider this very important?

Quote:
Originally Posted by ffcmike View Post
Being able to assign ganis to classes would be cool too.
You can already do so Check the file, it should have an example and instructions on assigning a gani to a join class.

Last edited by DustyPorViva; 11-26-2011 at 03:51 PM..
Reply With Quote
  #37  
Old 11-26-2011, 03:23 PM
ffcmike ffcmike is offline
Banned
Join Date: Jul 2004
Location: London
Posts: 2,029
ffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond repute
Send a message via AIM to ffcmike Send a message via MSN to ffcmike
Quote:
Originally Posted by DustyPorViva View Post
If you'd like a custom variable like this.maprender = false; I could easily do that.
Yeah that would be useful.

Quote:
Originally Posted by DustyPorViva View Post
I also anticipated this, but I figured the only thing it affected were shadows. Do you consider this very important?
Not really no, I'd actually prefer to prevent showcharacter()'s from being rendered anyway.

Quote:
Originally Posted by DustyPorViva View Post
You can already do so Check the file, it should have an example and instructions on assigning a gani to a join class.
That's good to know, I didn't notice it as I was only extracting the .jar file for each new version.

Edit:
I've tried the assigning of classes to ganis now, strangely this worked as expected:

Quote:
quest_baddy_bird=gani:classic_baddy_bird_idle,para m1:classic_baddy_bird_red.png
But these only rendered the shadow and no image as specified by attr[1]:

Quote:
quest_baddy_chicken=gani:classic_baddy_chicken_idl e,attr1:classic_baddy_chicken_sprites.png

quest_baddy_chick=gani:classic_baddy_chicken_idle, attr1:classic_baddy_chicken_chick.png

quest_baddy_rooster=gani:classic_baddy_chicken_idl e,attr1:classic_baddy_chicken_rooster.png
And:

Quote:
quest_baddy_butterfly=gani:classic_baddy_butterfly _01
Simply produced an error of:

Quote:
Warning : Couldn't find the image gani:classic_baddy_butterfly_01
(I don't know why these quotes have a random space in them, they aren't contained within the text I've entered)

Last edited by ffcmike; 11-26-2011 at 04:08 PM..
Reply With Quote
  #38  
Old 11-26-2011, 05:16 PM
DustyPorViva DustyPorViva is offline
Will work for food. Maybe
DustyPorViva's Avatar
Join Date: Sep 2003
Location: Maryland, USA
Posts: 9,589
DustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond repute
Send a message via AIM to DustyPorViva Send a message via MSN to DustyPorViva
Quote:
Originally Posted by ffcmike View Post
Not really no, I'd actually prefer to prevent showcharacter()'s from being rendered anyway.
The problem I'm having with this is actually being able to tell the difference between an actual character gani, and a prop gani like a tree or such. Not everyone uses showcharacter() reliably. The option is there for now, but I don't know if I commented out the functionality or not.

Quote:
Originally Posted by ffcmike View Post
Edit:
I've tried the assigning of classes to ganis now, strangely this worked as expected:
I've fixed this.

> I've also fixed the MNG issue
> added the ability to ignore the rendering of NPCs if you use this.ignorerender = true; in the script of an NPC. However, it's a bit unreliable now, and won't apply to NPC's that aren't setimgpart or ganis, because of the way NPCs are processed(on the fly).
> Fixed the setCharani(gani[frame],null) issue
> I fixed the issue with this.dirturn and so on. Now only applies if the variable is this.dir.
Attached Files
File Type: zip NW2PNG2.0.zip (247.4 KB, 1421 views)
Reply With Quote
  #39  
Old 11-26-2011, 09:10 PM
Deas_Voice Deas_Voice is offline
Deas
Deas_Voice's Avatar
Join Date: Jun 2007
Location: Sweden
Posts: 2,264
Deas_Voice is a jewel in the roughDeas_Voice is a jewel in the rough
Send a message via AIM to Deas_Voice Send a message via MSN to Deas_Voice Send a message via Yahoo to Deas_Voice
nice =)

you might want to get someone to edit the first post for you, and include the github link.
you might as well clean the first post up a bit with bullet list of what you have added, it's hard to read what you have added, but im sure it's all awesome things (=

i havent been on graal for a while, so i probably wont use it, but from what the posts in this thread can tell me, you have dont a great amount of work!

ill forward the thread to Alex (born2kill) when i see him online, I'm sure he will be surprised!
__________________
.
WTF is real life, and where do I Download it?
There is no Real Life, just AFK!
since 2003~
I Support~
ღAeonღ | ღTestbedღ | ღDelteriaღ

if you are going to rep me, don't be an idiot, leave your name!
I got nothing but love for you
Reply With Quote
  #40  
Old 11-26-2011, 09:11 PM
DustyPorViva DustyPorViva is offline
Will work for food. Maybe
DustyPorViva's Avatar
Join Date: Sep 2003
Location: Maryland, USA
Posts: 9,589
DustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond repute
Send a message via AIM to DustyPorViva Send a message via MSN to DustyPorViva
Quote:
Originally Posted by Deas_Voice View Post
nice =)

you might want to get someone to edit the first post for you, and include the github link.
you might as well clean the first post up a bit with bullet list of what you have added, it's hard to read what you have added, but im sure it's all awesome things (=

i havent been on graal for a while, so i probably wont use it, but from what the posts in this thread can tell me, you have dont a great amount of work!

ill forward the thread to Alex (born2kill) when i see him online, I'm sure he will be surprised!
I'm waiting for it to be completed before I have the original post updated. I don't want to bother Crono every time I make a minor update.
Reply With Quote
  #41  
Old 11-27-2011, 02:14 AM
DustyPorViva DustyPorViva is offline
Will work for food. Maybe
DustyPorViva's Avatar
Join Date: Sep 2003
Location: Maryland, USA
Posts: 9,589
DustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond repute
Send a message via AIM to DustyPorViva Send a message via MSN to DustyPorViva
Fixed some more parsing errors.

edit: Updated
Attached Files
File Type: zip NW2PNG2.0.zip (247.4 KB, 1439 views)

Last edited by DustyPorViva; 11-27-2011 at 04:08 AM..
Reply With Quote
  #42  
Old 11-27-2011, 08:00 AM
DustyPorViva DustyPorViva is offline
Will work for food. Maybe
DustyPorViva's Avatar
Join Date: Sep 2003
Location: Maryland, USA
Posts: 9,589
DustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond repute
Send a message via AIM to DustyPorViva Send a message via MSN to DustyPorViva
Alright, this is nearing completion, though Chris Vimes is also contributing and looking into solving the memory issues.

I've squashed a lot of bugs, and I sat and talked with Thor as he rendered his maps, sorting out various bugs and he eventually ended up with a rendered map and no issues. However, this update is for some more major feature updates:

> NPCs and Ganis are now stored differently, but together. This makes things a little simpler in the code, but more importantly it allows me to sort them before I render them. Now they're sorted via their Y position, meaning NPCs should now no longer draw oddly over each other. However, because of the way ganis and such are rendered, there were slight complications. If a gani was in front of a door for example, but one tile below it, it was still being rendered under the door because of the way gani offsets are handled. So to compensate this I gave ganis a "handicap" so that if their Y matches a non-character Y, they would get draw over priority. However, because I've added this, it will also allow me to eventually parse for drawoverplayer() and so on and add that into the calculations when sorting.
> Render Characters toggle now works. Though, it only works if a character is deemed a character via showcharacter. If you're simply setting a gani like setcharani idle,null; then it will still be drawn.
> Fixed loads and loads of parsing bugs

So unless people have some major bugs will this, I'll probably sort out a nice write up about it and have Crono update the original post.

edit: Catching nullpointervalues now so it shouldn't hang when it encounters those problems, and should notify you via errorlog.
Attached Files
File Type: zip NW2PNG2.0.zip (248.4 KB, 1517 views)

Last edited by DustyPorViva; 11-27-2011 at 05:44 PM..
Reply With Quote
  #43  
Old 08-15-2012, 12:52 PM
GoDoT GoDoT is offline
Coder
GoDoT's Avatar
Join Date: Jul 2012
Location: Level Editor
Posts: 37
GoDoT is an unknown quantity at this point
Send a message via AIM to GoDoT
This does not show any NPC's at all for me:
__________________
Origumu Godu (Forge)
iZone Levels Team
Email: [email protected]
Reply With Quote
  #44  
Old 11-04-2012, 10:06 PM
ffcmike ffcmike is offline
Banned
Join Date: Jul 2004
Location: London
Posts: 2,029
ffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond reputeffcmike has a reputation beyond repute
Send a message via AIM to ffcmike Send a message via MSN to ffcmike
It seems the recent changes to file cache'ing in V6 prevents images from being found by this tool, which is a massive shame.
Reply With Quote
  #45  
Old 11-04-2012, 10:23 PM
DustyPorViva DustyPorViva is offline
Will work for food. Maybe
DustyPorViva's Avatar
Join Date: Sep 2003
Location: Maryland, USA
Posts: 9,589
DustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond reputeDustyPorViva has a reputation beyond repute
Send a message via AIM to DustyPorViva Send a message via MSN to DustyPorViva
Ah that's a pity... if someone wants to make up a quick fix the source is still up. If I ever get back into this I'd probably redo a lot of things from scratch(like script parsing), and I haven't the time for that right now.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 03:26 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.