PlaneShift

Support => Technical Help: IN GAME bugs (after loading world) => Topic started by: shorty13 on November 09, 2005, 01:09:01 am

Title: NPC's
Post by: shorty13 on November 09, 2005, 01:09:01 am
Do the dev\'s know/can they tell us how much longer the NPC\'s will be broken for?  A bunch of us want our new pets to follow us around and aid us in fights and stuff.  thx, and as always, appreciate your time and work.
Title:
Post by: acraig on November 09, 2005, 01:25:53 am
We are looking at this right now, basically it\'s one of these \'non-easy\' problems like a simple null pointer or something.   Basically, things are not happening like we thought they would and the problem is not easily duplicated.  This greatly increases the amount of work that we need to do because we have to think totally like a machine in order to figure out what it\'s doing.  Now despite our \'13373\' skills, this type of thinking is like being kicked in the nuts and often or not just give up to play WoW for a while...
Title:
Post by: shorty13 on November 09, 2005, 03:44:52 am
lol I was hoping you would reply.  Thx for the info and good luck.  You are doin a great job!
Title:
Post by: kevman on November 09, 2005, 05:27:14 am
so basically this is a problem that could be solved today or three weeks from now dang
Title:
Post by: spydirweb on November 09, 2005, 05:37:57 am
as a SIS student (software informations systems...like computer science, but more specific towards a technology field), I\'d like to say a word of encouragement to all the developers...

AT LEAST IT\'S NOT JAVA!

*Yosemete Same cursing moment filled in with \"I HATE JAVA!\"*
Title:
Post by: acraig on November 09, 2005, 06:40:40 am
I did a concurrent programming course that used Java.  It wasn\'t a hard course it\'s just that none of the assignments made much sense.   Everything is a story ( look up dining philosopher example problem ).


As to the npcclient we may have a potential lead on that.  It seems that somehow pets are duplicated in the database which causes problems so tomorrow we will remove the duplicate pets and fix the bug that allowed that in the first place and see if that helps.
Title:
Post by: kevman on November 09, 2005, 06:43:42 am
sweet, keep it up
Title:
Post by: shorty13 on November 09, 2005, 11:33:07 pm
Quote
Originally posted by acraig
I did a concurrent programming course that used Java.  It wasn\'t a hard course it\'s just that none of the assignments made much sense.   Everything is a story ( look up dining philosopher example problem ).


As to the npcclient we may have a potential lead on that.  It seems that somehow pets are duplicated in the database which causes problems so tomorrow we will remove the duplicate pets and fix the bug that allowed that in the first place and see if that helps.


/me sobs while saying \"I love you man\", then remembers he is talking to a guy.
Title:
Post by: arcain on November 11, 2005, 02:05:56 pm
well it sounds like you guys almost have a  breakthrough on this npc thing.good job guys keep it up.
Title:
Post by: pasmoi on March 23, 2006, 12:27:28 am
Quote
Originally posted by acraig
We are looking at this right now, basically it\'s one of these \'non-easy\' problems like a simple null pointer or something.   Basically, things are not happening like we thought they would and the problem is not easily duplicated.  This greatly increases the amount of work that we need to do because we have to think totally like a machine in order to figure out what it\'s doing.  Now despite our \'13373\' skills, this type of thinking is like being kicked in the nuts and often or not just give up to play WoW for a while...


ok, there are a lots of tools that can help you on this one.
(I\'ll only speak about linux tools, but I guess the same tools exists for windows)

valgrind : a wonderfull program that will tell you everything about non-initialised pointer, random segfaults, and all the other bugs linked to memory managment.

electric fence : a wonderfull library that, when you use it properly, can trigger any random crash and make it so it can be triggered at will for debuging.

my favorite quote : \"when in doubt, dike it out\"

sometime, instead of spending too much time trying to find a bug, it is better to document the code (1 line of code -> 2 lines of comments that explains everything + 10 lines per class and 10 lines before each function at least) and then ask another member of the project to find the bug (this tip comes dirrectly from my programming experience)
(but one time out of two,  documenting the code makes you find the bug ...) (and it helps you making less \"algorithm\" bugs later on)
 

(for newbe programmers) : and we will never repeat it enought : before tring to use a compiller, read its manual : (appart from proprietarian trash like java)  it\'s always full of option that will make it tell you a lot of precious additional stuff about your code, such as uninitialised variables (very usefull for pointers) ...

also note that when a program crashed, and you cannot run it step by step and have no means to know why, a solution is to make it \"dump\" it\'s memory (stack) to a file (thanks to signal managment) and use an asm/hexadecimal editor to see after wich \"chain\" instruction it crashed, and wich where the values of the variables
(yes, it needs some code to be made, but it worth it) (for those that doubt it : asm80x86 is really simple, or at least the 2% of it that the compilers uses are more than simple) (also usable when it didn\'t crashed but that a non-reproductible, but detectable bug occured)

note : gdb, as other begugers is able to work on the memory image of a program that crashed or was stoped.
note2 : for really non-reproductible problems, it would be great to put an option in planeshift so that the game would \"maintain\" a voluminous log in wich it would log every \"critical values\" of variables and such things :  users that would want to help debuging would just have to ennable this option.
Title:
Post by: steuben on March 23, 2006, 12:46:35 am
/me steps away from pasmoi, and waits for the lightning to strike.

seems to be making a couple of ... interesting assumptions. but the original problem was solved. this current batch may be something else all together.
Title:
Post by: DaveG on March 23, 2006, 12:58:27 am
Title:
Post by: pasmoi on March 23, 2006, 01:51:40 am
ok, sorry, I made bad asumptions, since I (wrongly) thought a lot more devellopers worked on planeshift

sorry to resurect this, I came accross it looking for a problem I had in the game (wich I have found the solution to since in an even older post)

ok, I go download ps sources and i go to bed ... (it seems to be high time for me !)
Title:
Post by: DaveG on March 23, 2006, 02:07:13 am
If you need help building, feel free to ask in #planeshift-build on FreeNode.