5355(Hellmouth)

10/04/2011 07:35 nushizu#1
this is going to make me look beyond retarded (sorry P4N) but I've been staring at this for awhile, getting the mobs to spawn just seems to escape me here, now I do not want someone to do it for me. that being said as I've read in his posts(and a hint from a PM) that there was some things left out/typo'd on purpose. so anyone who can gimme something of a hand(primarily for me to ask questions too) kindly leave a comment or inbox me, I prefer an IM kinda deal but sadly most the IM programs I use are on my iPhone. thanks in advanced

Nushizu

Edit: Can a Mod add [Help] to the title of my post please and thank you
10/04/2011 11:28 BaussHacker#2
The source is not worth it, if you don't know what you're doing.
Everything is just like a big mess.

No offense pro4never, but it is :P
10/04/2011 15:29 pro4never#3
Hey, I completely agree.

I released it for a reason ;) It was my first attempt at writing a custom source and it turned into a mess really quickly.

I'd love to say the new source is better (and it is <_<) but it's also rather a mess.

Personally I feel it's really hard for any NON BASE SOURCE to not turn into a giant mess. It's easy to keep things easy to navigate and understand when it's say... 5,000-10,000 lines but what happens when you get to 40,000 + lines in addition to file dependencies, dozens of database tables and flatfile resources? It simply grows out of control and becomes infinitely more difficult to navigate.

Unless your fang... then it's always flawlessly organized (just teasing man :D)
10/05/2011 06:08 nushizu#4
favorite part of the source that I've understood thus far....the npc system, edit on the fly. easily my favorite lol its badass
10/05/2011 14:03 pro4never#5
Would be nice to see more sources going the route of external npcs...

Regardless of what system you use for your npc support, having them externally is a really nice way of doing it for a few reasons...

1: Ease of editing. Someone reports an npc is acting up, pull up the script, fix it, test... No restarts even when server is fully live.
2: Ease of VIEWING. Hundreds of npcs all in 1 npcdialogue.cs type file? There's quite literally no way that's going to be user friendly.
3: Expandability. In my new version I added support for multiple languages. The user can select a language they want to use and it will translate all ingame npcs (which have a translation provided, if not they will default to english version and if no english version is coded then they will give the "not coded" msg in the user's language!) as well as the possibility of adding in machine translation ingame for chat.
10/05/2011 14:26 BaussHacker#6
Extern npc scripting ftw.
10/05/2011 16:54 nushizu#7
Yeah I'm leaving hellmouth till I understand more however I'm gunna study that npc system till I figure out implementation ;0 also what do you guys think of a day/night system(including dusk and dawn) which determines what mobs spawn npcs....and bosses?

EDIT:

also when one mods the client (flash thing) you can remove selectable classes right as that is a part of the flash.?
10/05/2011 18:50 pro4never#8
You can I suppose edit the client to remove them entirely (reasonable level of difficulty) and or during character creation you can block them from choosing a certain class and responding with a "this class is disabled" kind of msg.

Day/night system would be interesting... it will add some complexity to your work and tbh I'm not a fan of the map color system in conquer (it's very basic and kinda... 'meh') but it's definitely feasible to do some cool stuff with it.

Personally I'd break it down into a few things...

#1: Decide 'cycles' of time

-Day/night or are there multiple 'stages' of time?
-What is effected by this?... is it global or per map (global would be durr in my mind but there are indoor maps obviously which shouldn't be effected...)

#2: How am I controlling this cycle

Day cycle thread would work nicely but you still need a logical system to control what maps are changing and to what values (a simple database would work great or even a flatfile list of maps which are altered and rgb values for day/night (and transition if needed)

#3: What is this cycle effecting and how

Now that you have your cycle displaying properly then you need to determine what it changes. You mentioned npcs.. What I'd do in this case is create a "Time" bitfield in the npc database which controls which cycles they are displayed in.

Example...

day = 0x1
night = 0x2;
dawn= 0x4;
dusk = 0x8;

If you know how bitfields work you can allow RANGES of times which npcs show and work using this value... then in your spawn code you need to remember to check if the npc contains flag for current time and if so allow ppl to use them (or alter script they use) or not display them at all.



Then expand that to other systems and you've got some interesting options!