Jump to content
Eternal Lands Official Forums

Cicero

Members
  • Content count

    2056
  • Joined

  • Last visited

Posts posted by Cicero


  1. Sounds like something you should send upstream. If support for it is as bad as you say, you could save someone else on amd64 a headache :)

    Now look what the cat dragged in... good to know you're still alive Cicero :)

     

    Yeah I guess I should make a post on the Pawn forums. After all I *am* part copyright holder of the current distribution :P

     

    I read the programming forum occasionally to see what you guys are up to. Pawn got my attention. I've been programming in Lua at work for a few weeks now :P


  2. Bug found and fixed.

     

    For those that are interested:

    The Pawn abstract machine can execute instructions in two different ways: indirectly via a gigantic switch statement over the opode, or for certain compilers by directly writing memory addresses for executable code in the AMX code. Gcc happens to be one of those compilers, and on 32 bit systems the code generation, execution, and function address rewriting was happily done with absolute addresses. However on amd64, an incorrect #ifdef led the rewriting code to insert AMX opcodes instead of the corresponding memory address into the AMX code, which resulted in a segfault when the script was executed for the second time and tried to jump to the rewritten address.

     

    Sounds like something you should send upstream. If support for it is as bad as you say, you could save someone else on amd64 a headache :(


  3. Submitted patch 001161 on Berlios. This contains a custom WAV loader so it is no longer necessary to use ALUT (I noticed someone already removed init and exit). This means EL sound can work with old and new versions of OpenAL. I didn't test it, just made sure it compiled. I pulled it out of another one of my projects, took me about 5 mins to get it working w/ EL (would have been less, but it was originally C++). Since the sound code from that project was based on the EL sound code that I wrote, I thought it was appropriate to return the WAV loader to its ancestor. :pirate:

     

    PS - Hi, anyone who remembers me.


  4. I think it's a good idea. It will certainly make crafters quite rich. Similar items are extremely popular in other games. I think most of the effects should be mild, but strange (the "touch of meat" one cracked me up, but 20 mins is way too long. 2 mins is more than enough time to fill your inventory with veggie steaks). I'm pretty sure that the game doesn't support this right now, but the ring could make you look like a rat/beaver/bunny/whatever for a few minutes. Also, I think Ent would get a kick out of it being called "Chaos Ring", but "Ring of WTF" would fit in the game just fine.

     

     

    P.S. :D


  5. One of the slowest parts of the main display loop was the mouse-object intersection tests. Taking out the tests entirely gets you a nice chunk of "free" FPS. At some point, someone made a test to see if the mouse was in a bounding box around a 3d object, but no test was ever made for actors (this was about the time cal3d development was starting). You could probably get some decent performance gains by creating bounding boxes or even a bounding hierarchy for all actors and objects, and maybe try to find a faster and better method for testing the intersection than reading pixels from the back buffer (slow).

     

     

     

    Now that I finally know enough about graphics to make some good improvements, I have absolutely no free time :P


  6. The unpredictable actions of the other players make the random numbers pretty much true random numbers for any given player. I did run some tests in the past to attempt to find the best random number generating method, and discovered that the server was already using the best way.

     

    http://www.eternal-lands.com/forum/index.php?showtopic=9412

     

    What you are looking for is actually not true random numbers, but more pseudo-random and evenly distributed numbers. The best way to get that is to actually use a dumber random number generator and give every player their own individual entropy pool.

     

    There is really no point in attempting to solve this "problem". People will always see patterns in chaos, and complain that the random numbers treated them unfairly.


  7. When you see "extern int" it does not mean "declare an int and make it available outside this file", it means "there is an int by this name declared in another file, use it instead of creating a new variable". Whenever you see an "extern" variable, it should mean that the file in question is trying to access a variable by that name that is declared in another file.


  8. Eh, that file is really unnecessary. I think it defines some things for you if you don't have a glext.h, which apparently Ent didn't have. I've tried to get rid of it several times. Your real GL headers are the only ones you should be using, not the SDL_opengl.h


  9. I would argue that orthographic is still better for EL. EL is not seen from a person's perspective, which is what perspective projection attempts to do. If there was a first person view mode, then perspective would be appropriate. I don't think you'll be able to make it look "right" as an overhead/isometric view.

     

    Just my opinion, of course, since I'm not working on EL anymore. Just thought I'd try to chime in since I'm finally learning 3d graphics (yeah I know, bad timing :) )


  10. Some of you may have noticed that I haven't been in the game for a while now. Developers have probably noticed that I haven't been adding much to the game either. I probably shouldn't have had such a "lukewarm" involvement for this long, and for that I apologize, especially to Roja.

     

    I'm leaving EL. I may come back at some point in the future to say hi, and I may even come back to work on the game. For now though, I'm taking an official sabbatical. I'll probably check back on this thread for a few days and then that will be it.

×