Page 1 of 1

Overriding 'internal' stuff. (v0.17)

Posted: Wed Mar 13, 2002 9:02 pm
by Gambit37
This is kind of a combined posting. It's a feature request as well as a bug report and a query.... :wink:

Try casting OH EW RA in the Sandy Dungeon walls example. Looks weird, and highlights a problem with elements in RTC that cannot yet be overriden. Taking this example a stage further, what would happen in a dungeon that has different wall graphics on each level? Well, currently nothing - you'd see the same internal graphic every time.

The solution is obviously complex - to somehow allow these internal objects and their graphics to be re-defined on a per-level basis. This really begins to mess things up though....

There are actually two problems here. The first is that internal objects cannot currently have their bitmaps re-defined. The second is that even if this were possible, how do you re-re-define(!) the bitmaps each time the level changes. You'd have to have a way of changing the graphics parameters for spells both on a global (dungeon) scale and on a local (level) scale. I imagine this would be hugely complicated...

George, I wonder what your thoughts are on this confusing matter?

Re: Overriding 'internal' stuff. (v0.17)

Posted: Wed Mar 13, 2002 10:51 pm
by amaprotu
A clumsy but potentially effective method (for level by level changes):

Trigered spell graphic changers. Not the most beutiful method but potentially more flexible? Internally do spells have names? or are they defined by their symbols?
Something like this:

1008&nbsp &nbsp &nbsp &nbsp FLOORITEM_TRIGGER ... SPELL=(000100,000100,000000,newgfx.bmp)

or

1008&nbsp &nbsp &nbsp &nbsp FLOORITEM_TRIGGER ... SPELL=(spellname,newgfx.bmp)

I don't see having to change spell graphics on a level by level too much so maybe this would work?

Re: Overriding 'internal' stuff. (v0.17)

Posted: Wed Mar 13, 2002 11:28 pm
by beowuuf
The problem with that floortile idea is that you would need to take into account the facing for each wall, AND if the wal was toggleable or not.

A generic override for each level, of any graphical property, would be cool, as I think i mentioned before in another post. But yes, I can imagine it being hell on toast t implement. Still...

How does the wallset thing work? Could it be expanded to check for any other inclusions? So you could redifine any bitmap if you wanted on a per-levl basis, otherwise the default is used?

So you miiiiight decide to have certain items icons be redefined on enetering a level, (you might have powerful magic items '#glow' on a certain level) or my suggestion was having the interface change to relect levels (different colours for diffent areas, like reddening for entering a fire level, colder colours for snow area). Or you might even use the exact same monster in several levels, but just use differnt skins on each level.

Re: Overriding 'internal' stuff. (v0.17)

Posted: Thu Mar 14, 2002 12:26 am
by Gambit37
It's all a bit tricky, ain't it?

I think that it's all connected to the fact that 'new' objects can't really be created. New stuff has to clone something else first and change it's parameters. That's simple enough for things that will have a unique name that can be referenced in the TXT file. Check the Phantom example level to see what I mean.

But for objects that are only handled internally by the engine - explosions and magic windows for example - there is no way of overriding these as they aren't called directly in the TXT file. I must admit I still don't understand why it's been designed that way. Surely it would have been easier to simply replace the images of the existing stuff with new bitmaps? I guess there's a good reason for it, but it confuses the hell out of me... <!--EZCODE EMOTICON START --><img src=http://www.ezboard.com/intl/aenglish/im ... ohwell.gif ALT=""><!--EZCODE EMOTICON END-->

Re: Overriding 'internal' stuff. (v0.17)

Posted: Fri Jul 26, 2002 6:55 pm
by Gambit37
George, is this somewhat fixed with the ADD and REPLACE functions?

Re: Overriding 'internal' stuff. (v0.17)

Posted: Mon Aug 05, 2002 2:55 pm
by George Gilbert
Should be yes!