Generic Egoboo revival thread

The development of the game itself or new resources for it. Any new stuff you're working on would go here, as well as the discussion of in-development stuff.

Moderator: Developers

Post Reply
User avatar
Shade
Potion Mimic (Senior Member)
Potion Mimic (Senior Member)
Posts: 7349
Joined: Thu Jul 24, 2008 12:25 pm
Location: Gensokyo

Generic Egoboo revival thread

Post by Shade »

2.9.0 issues (may be able to fix on my own):
  • Particles as a whole behave very oddly. They don't spawn where they're supposed to and have wonky hitboxes? (someone screwed up the particle files; copying them over from 2.6.8 might fix the problem)
  • The grub mum doesn't move at all after going down the drain (either a script or a physics issue)
  • Grub bugs appear to have super-large hitboxes for their bite attacks. You take damage even when simply walking past them without really touching them.
  • Book of morph seems to be buggy, after transforming and untransforming, the character takes no damage
  • Backstabbing works from extremely weird angles and produces duplicate messages
  • Archaeologist Starter: pf5234 was trying to lure snakes into a trap, and then got a message to "RUN! RUN whatever", something must've triggered :\
  • Frights are impossible to hit with weapons or healing touch
  • Braziers' flames have super-large hitboxes
  • The Gelfeet is immobile
  • When receiving a present from Santa, it doesn't actually appear
2.9.0 issues that I cannot fix on my own:
  • Revert the inventory system back to how it used to be (two buttons to cycle through items rather than one to bring up a menu, no weight limit).
  • Taking out an item while already holding a cursed one causes strange things to happen. Revert the inventory system.
  • Blood particles take forever to disappear. "End if hits ground" not working? (Could be a physics problem)
  • Game crashes when trying to move player 2, 3 or 4 (camera bug)
  • Almost all of the game tips displayed when loading a module go off-screen to the left (doesn't happen in 800x600)
  • The mouse cursor is just a white square (works correctly in linear and anisotropic in OS X, but default is trilinear)
  • Players drop their inventory items upon death (not a script issue)
  • Tile mimics cannot be interacted with other than by trying to pick them up (dislocated hitbox? Physics issue?)
  • COBOLs can walk on top of / through walls (in Rogue Starter, at least)
  • The ball 'n chain dislocates (pushes around) doors. Possibly weight-related physics screw-up
  • Exit Area in Elf Starter is physically visible (OS X only, HIDE tag is not missing)
  • Gatlin Gonne cannot be mounted (probably physics issue)
  • COBOLs in Rogue Starter don't have longbows like they should (not a slot issue, only concerns COBOLs - IfHoldingRangedWeapon works as intended, though)
  • Rogue Starter: K'nife drops his knives when dropping his key (script is correct - DropKeys is the only possible offender)
  • Sometimes, Egoboo deletes your character upon exporting rather than saving it
Newly Fixed:
  • Idols are a bit too tough (Shade)
  • Rogue Starter: unique shields are replaced by generic ones (Shade)
  • Adventurer Starter: Fix the end message to list whomever actually killed the grub mum (Shade) (fix unconfirmed)
  • Drastically decreased the Exp requirements for most basic classes (Shade)
  • Speed and defense of most basic classes have been adjusted (Shade)
Fixed in 2.9.0.2
  • Elf Starter: Zombor's grave is too tough for even the mallet to destroy it (Shade)
  • Elf Starter: Zombor's attacks heal you instead of damaging you (Shade)
  • Player blip didn't appear. (pf5234)
  • All message 0's were not valid. (fixes exitarea.obj missing a message) (pf5234)
  • Player stats in the menu were misaligned when screen was not 800x600 (the virtual screen size for menus) (pf5234)
  • White Beard won't reload his gonne (pf5234)
  • Any stackable item put into your inventory turns into the first stackable item already in your inventory. Spears turn into mana potions, candy canes into spears, or mana potions into life potions, depending on what you put away first. (pf5234)
  • Exporting players lowercases all strings in data.txt (apparently intentional, but pointless) (pf5234)
Fixed in 2.9.0.1
  • Chests and tents don't drop items. (pf5234)
  • Add an option to turn off the EXP bar. (pf5234)
  • Damage resistance is messed up. (pf5234)
  • Memory problem when changing modules, leading to a glitched out replica of the module previously played? (OS X only) (pf5234)
  • OS X / Linux Camera Bug (pf5234)
Features planned to be added at some point:
  • Normal inventory system for items and weapons, equip menu for bracelets, amulets and armor, IDSZ for golden keys, silver keys and quest items
  • Add icons and descriptions for passive character skills that can be checked in-game (maybe only in the character selection menu) somehow
  • Possibly revamp the menu
  • Probably increase player movement speed by about 10 overall (no lower than 50 or 45)





___________________________________________________________________________________


Original post below:
___________________________________________________________________________________


Basically a continuation of what I started talking about in that thread there.

So I tried Egoboo 2.7.0b because it supposedly has the global object system in it, but... ...I don't see it. Some objects are inexplicably missing (such as the torch and book of missile in the adventurer starter), but other than that it seems to be playable.
Can someone confirm whether, in fact, the global object system is already implemented and usable in 2.7.0b, and if so, explain to me how it works / how to use it?
Last edited by Shade on Mon May 06, 2013 2:42 pm, edited 56 times in total.
User avatar
penguinflyer5234
Sheep (Developer)
Sheep (Developer)
Posts: 3025
Joined: Wed Jul 23, 2008 1:39 am
Location: Best Southwest

Re: Generic Egoboo revival thread

Post by penguinflyer5234 »

According to the file list on SF, it's "unstable"/"beta", maybe 2.7.3 fixed some things wrong with the GOS (but overhauled physics)

Will check after finished downloading source

EDIT: ... nice, the GOS has the book and the torch lolz
...
User avatar
Shade
Potion Mimic (Senior Member)
Potion Mimic (Senior Member)
Posts: 7349
Joined: Thu Jul 24, 2008 12:25 pm
Location: Gensokyo

Re: Generic Egoboo revival thread

Post by Shade »

penguinflyer5234 wrote:EDIT: ... nice, the GOS has the book and the torch lolz
Where is it even? It's neither in basicdat, nor among the modules, nor just there in Egoboo's main directory. Is it a separate download or something, or do I need to create and fill the folder myself? (If so, again, how do I do it?)

EDIT: ...oh, it's inside book.obj. What the heck?
User avatar
penguinflyer5234
Sheep (Developer)
Sheep (Developer)
Posts: 3025
Joined: Wed Jul 23, 2008 1:39 am
Location: Best Southwest

Re: Generic Egoboo revival thread

Post by penguinflyer5234 »

hmm odd. It's in the source download under basicdat/globalobjects (and basicdat/globalparticles for particles)

There's only the book.obj (with id 127) and torch.obj (with id 47) in the globalobjects folder. I'm sure you can take it from 2.6.8 or something

(Edit:) ... sounds like installer error :|
...
User avatar
Shade
Potion Mimic (Senior Member)
Potion Mimic (Senior Member)
Posts: 7349
Joined: Thu Jul 24, 2008 12:25 pm
Location: Gensokyo

Re: Generic Egoboo revival thread

Post by Shade »

...oh. Indeed it is. Renaming book.obj to globalobjects causes the missing items to correctly appear.

But if the global repository still works using slots, doesn't that mean that there's not actually enough room to make everything global? There are only 127 slots, after all. Am I missing something?

EDIT: Ugh, you can't be serious... 2.7.0b has the ancient bug Aaron's version had where items that are in your inventory for longer than one module completely glitch out or just disappear altogether.
User avatar
woodmouse
Monolich (Senior Member)
Monolich (Senior Member)
Posts: 4586
Joined: Wed Jul 23, 2008 3:53 pm
Location: Finland
Contact:

Re: Generic Egoboo revival thread

Post by woodmouse »

Feel free to ignore this post if it contains too many unnecessary personal opinions and suggestions, but I'll be sad if you all ignore me, so please don't.
Shade wrote:Well, in any case... If the current code is too much of a mess to do anything with it, couldn't we pick up an earlier version instead and retry from there? To be quite honest, I didn't really like the direction development has been going in anyway, with weird and uncalled for changes to the physics that broke much more than they could ever possibly have fixed being one of the greatest annoyances to me.
:agree: mostly, but I think one another issue is the lack of Bargel. Like, totally, Bargel should be in every single module and every character should be replaced with Bargel because Bargel is awesome. Yeah, no. :roll: I agree completely with what you said, don't even read that Bargel mess, it was an obvious joke, but I'm sure nobody would understand that it was an obvious joke because I said it. But yeah, seriously, I think Bargel isn't big enough, but that's a whole another discussion... :lol:
Shade wrote:The only reason I ever stopped making stuff for Egoboo in the first place is because it randomly stopped working after a major change, which has never been properly adressed.
I had the same reason, and then sudden unexplainable bugs like global objects stopped working, etc. and maps were blank, and so on, but that all got fixed magically by 2.9.0 when I finally tried it like last month, which is... weird, but well. But yeah, it's probably the main reason anyone stopped doing stuff, I think, which is pretty disturbing in a way. :?
Shade wrote:Yeah, the story's finished - but as it is right now, most of the game feels extremely unfinished, there are a bunch of design decisions I don't agree with (you unlock the palaces with the sporks in them one after another, if I recall correctly? Why not allow access to all of them at once? The different classes have different strengths and weaknesses, making them better-suited to certain palaces than to others. A lot of classes struggle with the Sand Palace, for instance, which currently comes first) or that feel pointless (runes), and there's the fact that the latest versions all just plain don't work in the first place.
I'm 100% agreeful about this, not that it'd matter. But seriously, like, in my opinion it'd be best if the Palaces were unlocked after one or two modules which would be sort of "showcase" of what there will be later; maybe one dungeon and one forest module? That'd give players a bit more time to get used to the controls and there could be sort of things that would demonstrate stuff.
Shade wrote:axing what I deem pointless (runes and the paladin class, for instance)
Image

...but seriously, imagine some 12 year old kid who heard that there's a black character class, then they're like "yo I herd dis gaem has black men" to their friends, then discover that the black man/men were deemed pointless. They'd think it's racist, even if everyone involved in any way would know it's not. :P And besides, at least I think (not that it'd matter, but you know), that the Paladin class is cool, just a little unoriginal. Maybe one or two slight changes to something to differentiate them instead of making them just a combination of Soldier and Healer would be enough to make them not be pointless?
Shade wrote:and basically making a new storyline with new modules, without the sporks... But I dunno.
Why not keep the sporks as some sort of trophies that can be sold for a high price and/or used for some sort of special stuff? Maybe just something really simple, like having them do extremely super overpowered damage against certain types of enemies, depending on which palace the spork in question is from?
Shade wrote:If I decide to get serious about it, I'll make a new thread.
So this means you're serious about this? 8)
Shade wrote:There are only 127 slots, after all.
As far as I know, the slots in the global objects .obj files aren't the things that are used; they're set in spawn.txt to anything, even like 900 (okay, maybe not 900, but you know) and it still works. At least that works in 2.9.0, but I don't know about earlier...
Once upon a time, when unicorns roamed the earth...
User avatar
penguinflyer5234
Sheep (Developer)
Sheep (Developer)
Posts: 3025
Joined: Wed Jul 23, 2008 1:39 am
Location: Best Southwest

Re: Generic Egoboo revival thread

Post by penguinflyer5234 »

Shade wrote:But if the global repository still works using slots, doesn't that mean that there's not actually enough room to make everything global? There are only 127 slots, after all. Am I missing something?
There are actually 256 (0-255) models/slots. Just 37 of them are hardcoded in (0-35, 127)

Code: Select all

#define MAXMODEL 256 // max number of models
(egoboo.h:280)

Woodmouse: this is before Egoboo did that (I think that was added in 2.7.4 or something)
...
User avatar
Shade
Potion Mimic (Senior Member)
Potion Mimic (Senior Member)
Posts: 7349
Joined: Thu Jul 24, 2008 12:25 pm
Location: Gensokyo

Re: Generic Egoboo revival thread

Post by Shade »

woodmouse wrote:But seriously, like, in my opinion it'd be best if the Palaces were unlocked after one or two modules which would be sort of "showcase" of what there will be later; maybe one dungeon and one forest module? That'd give players a bit more time to get used to the controls and there could be sort of things that would demonstrate stuff.
I definitely think the learning curve needs to be a little less steep. Even if you're good at the game, the Sand Palace is a pretty big step up compared to most of the starter modules, and there are no other modules to grind up your character a bit. (Unless you're playing as a healer, in which case you can burn the books in Zippy for Exp.)
woodmouse wrote:...but seriously, imagine some 12 year old kid who heard that there's a black character class, then they're like "yo I herd dis gaem has black men" to their friends, then discover that the black man/men were deemed pointless. They'd think it's racist, even if everyone involved in any way would know it's not. :P And besides, at least I think (not that it'd matter, but you know), that the Paladin class is cool, just a little unoriginal. Maybe one or two slight changes to something to differentiate them instead of making them just a combination of Soldier and Healer would be enough to make them not be pointless?
Then what would you do to make the paladin unique? I can't think of anything off-hand that wouldn't just be copying other classes. Besides, he doesn't even have a unique model; he's using the soldier's, for damn's sake.
woodmouse wrote:Why not keep the sporks as some sort of trophies that can be sold for a high price and/or used for some sort of special stuff? Maybe just something really simple, like having them do extremely super overpowered damage against certain types of enemies, depending on which palace the spork in question is from?
Well, having the sporks when they're not part of the story would be a bit random.
If I want to reward the player with lots of money, I'll just shower them with coins instead.
woodmouse wrote:So this means you're serious about this? 8)
If I manage to get a reasonable base to work with, yes.


@pf5234: Oh, okay. Still, why are items glitching out again when they didn't in 2.6.8? Is the global object system messed up in 2.7.0b? Is there any simple way to fix it? (Copy-pasting a chunk of a later version's code so that I can have a working GOS, but not the screwed-up physics engine?)
Last edited by Shade on Thu Dec 13, 2012 11:00 am, edited 1 time in total.
User avatar
woodmouse
Monolich (Senior Member)
Monolich (Senior Member)
Posts: 4586
Joined: Wed Jul 23, 2008 3:53 pm
Location: Finland
Contact:

Re: Generic Egoboo revival thread

Post by woodmouse »

Shade wrote:Then what would you do to make the paladin unique? I can't think of anything off-hand that wouldn't just be copying other classes. Besides, he doesn't even have a unique model; he's using the soldier's, for damn's sake.
Divide undead destruction power of destroying undead with divine powers? :mrgreen: You know, a sort of thing when using a ranged weapon, that would make it home in on undead (and demons) and deal extra damage. Or maybe automatic healing of allies, etc.
Once upon a time, when unicorns roamed the earth...
User avatar
penguinflyer5234
Sheep (Developer)
Sheep (Developer)
Posts: 3025
Joined: Wed Jul 23, 2008 1:39 am
Location: Best Southwest

Re: Generic Egoboo revival thread

Post by penguinflyer5234 »

Shade wrote:@pf5234: Oh, okay. Still, why are items glitching out again when they didn't in 2.6.8? Is the global object system messed up in 2.7.0b? Is there any simple way to fix it? (Copy-pasting a chunk of a later version's code so that I can have a working GOS, but not the screwed-up physics engine?)
In Egoboo 2.7.0b, it first loads all the module's objects by going through the .mod/objects directory and loading them one by one, then it loads all the global objects by going through the globalobjects directory in exactly the same process as the module's objects. Any other bugs are not part of the global object system and have appeared somewhere else.
Spoiler: Relevant code (module.c:155-319)
[code]void load_module( char *smallname )
{
[...]
load_all_global_objects(load_all_objects(modname));
[...]
}

int load_all_objects( char *modname )
{
// ZZ> This function loads a module's local objects and overrides the global ones already loaded
const char *filehandle;
bool_t keeplooking;
char newloadname[256];
char filename[256];
FILE* fileread;
int cnt;
int skin;
int importplayer;

// Log all of the script errors
parseerror = bfalse;

//This overwrites existing loaded slots that are loaded globally
overrideslots = btrue;

[import loading, irrelevant]

// Search for .obj directories and load them
importobject = -100;
make_newloadname( modname, "objects" SLASH_STR, newloadname );
filehandle = fs_findFirstFile( newloadname, "obj" );

keeplooking = btrue;
if ( filehandle != NULL )
{
while ( keeplooking )
{
sprintf( filename, "%s%s", newloadname, filehandle );
skin += load_one_object( skin, filename );

filehandle = fs_findNextFile();

keeplooking = ( filehandle != NULL );
}
}

fs_findClose();
return skin;
}

//--------------------------------------------------------------------------------------------
void load_all_global_objects(int skin)
{
//ZF> This function loads all global objects found in the basicdat folder
const char *filehandle;
bool_t keeplooking;
char newloadname[256];
char filename[256];

//Warn the user for any duplicate slots
overrideslots = bfalse;

// Search for .obj directories and load them
sprintf( newloadname, "basicdat" SLASH_STR "globalobjects" SLASH_STR );
filehandle = fs_findFirstFile( newloadname, "obj" );

keeplooking = btrue;
if ( filehandle != NULL )
{
while ( keeplooking )
{
sprintf( filename, "%s%s", newloadname, filehandle );
skin += load_one_object( skin, filename );

filehandle = fs_findNextFile();

keeplooking = ( filehandle != NULL );
}
}

fs_findClose();
}[/code]
EDIT: Should be relatively simple to add
...
User avatar
Shade
Potion Mimic (Senior Member)
Potion Mimic (Senior Member)
Posts: 7349
Joined: Thu Jul 24, 2008 12:25 pm
Location: Gensokyo

Re: Generic Egoboo revival thread

Post by Shade »

woodmouse wrote:Divide undead destruction power of destroying undead with divine powers? :mrgreen: You know, a sort of thing when using a ranged weapon, that would make it home in on undead (and demons) and deal extra damage. Or maybe automatic healing of allies, etc.
Boni against undead would indeed be interesting, but he'd still just be a copy of the soldier that just so happens to obsolete the healer by also being able to heal.

@pf5234: I dunno if it's because of the GOS, I just know that items in my inventory glitch out for no apparent reason. Everything was fine after exporting my adventurer from the starter module, but after beating the Sand Palace and entering Zippy, the book of shock was invisible (but could be picked back up) and the bracelet turned into a glitched coin. After leaving Zippy and entering it again, the sword from the adventurer starter had a cobol face for its icon instead (but the correct model), while the golden spork's icon was a complete graphical mess (but again the actual model was intact).
Any idea what might be causing that?



EDIT: ...well, unless fixing the above is easier, could you perhaps compile 2.6.8 with only the latest (working, to be sure) version of the global object system added to it for me? That'd be awesome.
User avatar
penguinflyer5234
Sheep (Developer)
Sheep (Developer)
Posts: 3025
Joined: Wed Jul 23, 2008 1:39 am
Location: Best Southwest

Re: Generic Egoboo revival thread

Post by penguinflyer5234 »

Probably this:
Zefz wrote:New Feature: Egoboo now uses SDL_Image which improves the texture loading for Egoboo. We now have support for png, jpg, tif, pcx, gif, etc.
I remember there being a few graphical glitches during 2.6.9 beta.

I'll add the 2.7.0b version first, then maybe add the newer one, lemme just restart into Windows and get Egoboo to compile first
...
User avatar
Shade
Potion Mimic (Senior Member)
Potion Mimic (Senior Member)
Posts: 7349
Joined: Thu Jul 24, 2008 12:25 pm
Location: Gensokyo

Re: Generic Egoboo revival thread

Post by Shade »

penguinflyer5234 wrote:Probably this:
Zefz wrote:New Feature: Egoboo now uses SDL_Image which improves the texture loading for Egoboo. We now have support for png, jpg, tif, pcx, gif, etc.
I remember there being a few graphical glitches during 2.6.9 beta.
That explains the glitched icons, but not the completely glitched bracelet. It was an actual spinning particle coin, adding random amounts (7 the first time, 4 the second time) of money when touching it and then disappearing for a few seconds.
penguinflyer5234 wrote:I'll add the 2.7.0b version first, then maybe add the newer one, lemme just restart into Windows and get Egoboo to compile first
Aye, take your time.
User avatar
Agent of Dread
Protector (Senior Member)
Protector (Senior Member)
Posts: 8991
Joined: Wed Jul 23, 2008 8:46 pm
Location: Australia
Contact:

Re: Generic Egoboo revival thread

Post by Agent of Dread »

In my honest opinion, I think Egoboo just hasn't aged well enough, and it doesn't feel like there'd be any future in trying to revamp what we have here anymore.
This doesn't mean I don't like it, though; the gameplay is fresh and functional, and it certainly deserves a place, but it doesn't feel like we can pull enough out of the current engine.

Not that I'm going to interfere or anything, just my thoughts.
- Linktree: linktr.ee/trilbs -
User avatar
penguinflyer5234
Sheep (Developer)
Sheep (Developer)
Posts: 3025
Joined: Wed Jul 23, 2008 1:39 am
Location: Best Southwest

Re: Generic Egoboo revival thread

Post by penguinflyer5234 »

Shade wrote:It was an actual spinning particle coin, adding random amounts (7 the first time, 4 the second time) of money when touching it and then disappearing for a few seconds.
Sounds like memory corruption (using the wrong particle).
Do bracelets use particles while on the ground?


AoD: true, but porting Egoboo to another engine won't be easy at all (models especially, since grips and model frame prefixes and suffixes)
...
Post Reply