Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
DaniJ

Shadowcaster modding

Recommended Posts

Guest DILDOMASTER666

Yeah. Wall textures that run along the Y axis are stored in separate map planes from the ones that run along the X axis.

Share this post


Link to post
jute gyte said:

This site, mentioned earlier by Gez, has some partial CyClones and ShadowCaster resources, ripped the hard way.


Has anyone been able to extract the Shadowcaster music from the wad on this page? It doesn't seem to work for me. I'm using XWE--shouldn't it automatically save the .mus files in the right format?

Share this post


Link to post

Dani, that extractor tool you were planning on making, could it extract sprites? Since that's the only resource that RaVeN couldn't decipher, that's the only thing that's really missing.

Fisk said:

The height data for the entire level appears to be stored in one specific place and isn't defined for each individual cell. I'm not sure where it is, but maybe when I log on later I'll have more info for you.


Well, it's in an open sky area, but this is interesting:

See the glitch? You can get the same in Doom. The sky ceiling cuts the big pillar that is visible otherwise. This shows that there can be different heights in the same level, on a per-cell basis.

Share this post


Link to post
GreyGhost said:

It's working for me - using Save As from the Entry menu and renaming as a .MUS file.


Thanks. They definitely appear to be .mus files now, although I still can't seem to find anything that will play them.

Share this post


Link to post
Guest DILDOMASTER666
Gez said:

Well, it's in an open sky area, but this is interesting:

See the glitch? You can get the same in Doom. The sky ceiling cuts the big pillar that is visible otherwise. This shows that there can be different heights in the same level, on a per-cell basis.


Not quite. While I did manage to prove you correct by doing more research with the .map format, that is not a good example. The way Shadowcaster draws textures is a little finnicky and it seems to prefer to draw the textures level to the ground (usually), regardless of ceiling height. That's why I called it "perpetual lower-unpegged". Shadowcaster simply will not draw anything behind a short texture except sky, for what reason I don't know. On a note related to Shadowcaster's rendering methods, I notice that textures are not drawn any further than roughly 360 mapunits away...

Note that this does not mean I've figured out completely how to do height changes in SC. I know where they are stored in the map planes and everything, but I just can't get the change to draw correctly in-game. I always end up getting odd Doom-like flood-fill problems and occasionally some glitch-data drawn as a texture in certain areas. Notably though, the player is able to climb any height no matter what.

Also, working on getting a map editor for Shadowcaster started. Anyone who can show me how I would go about reading textures from the game's files would be greatly appreciated.

Share this post


Link to post

Anyone here got the demo? The links at RavenGames.com don't work and googling for "shadow.zip" was fruitless.

Share this post


Link to post

Can anyone convert the raw Shadowcaster textures to BMP/PNG? The ones in the .wad have been converted to the Doom pallete, and they look awful.

Share this post


Link to post
Not Jabba said:

Thanks. They definitely appear to be .mus files now, although I still can't seem to find anything that will play them.

Open a command console and use mus2midi.exe (in XWE's directory) to convert them.

@Ajapted - I found the demo here near the bottom of the page with some other goodies.

Share this post


Link to post
udderdude said:

Can anyone convert the raw Shadowcaster textures to BMP/PNG? The ones in the .wad have been converted to the Doom pallete, and they look awful.

Really? Because if they're taken from the archive I made, they're actually PNG in their own palette.

I checked, the lumps are PNGs files. They may look awful because the tool or port you're using to view them cannot render them correctly. Slumped, Doom Builder and ZDoom should all render them okay, though DB has some issues with a few that had transparency added through IrfanView (probably because IrfanView turned them into true color PNGs).

Fisk said:

That's why I called it "perpetual lower-unpegged". Shadowcaster simply will not draw anything behind a short texture except sky, for what reason I don't know.

Are you sure it's not the same reason as Doom?

Share this post


Link to post

Gez said:
Really? Because if they're taken from the archive I made, they're actually PNG in their own palette.

I checked, the lumps are PNGs files. They may look awful because the tool or port you're using to view them cannot render them correctly. Slumped, Doom Builder and ZDoom should all render them okay, though DB has some issues with a few that had transparency added through IrfanView (probably because IrfanView turned them into true color PNGs).


I opened it up with NWT and dumped them as RAW, then renamed them to PNG. Looks good, thanks.

Share this post


Link to post
Guest DILDOMASTER666
Gez said:

Are you sure it's not the same reason as Doom?


Positive. Checked it myself by hacking ruinsa.map. Textures that are shorter than the ceiling height are drawn at floor-level and draw sky behind them, nothing else.

Share this post


Link to post
Gez said:

Dani, that extractor tool you were planning on making, could it extract sprites? Since that's the only resource that RaVeN couldn't decipher, that's the only thing that's really missing.

Indeed it will be able to extract the sprites. I've only just started on it though (have been busy with other things) but it will feature exporting straight to BMP.

Share this post


Link to post
Fisk said:

I always end up getting odd Doom-like flood-fill problems and occasionally some glitch-data drawn as a texture in certain areas. Notably though, the player is able to climb any height no matter what.

Can the game actually draw lower and upper textures? I've played the demo for a while but have yet to see anywhere with height differemces, and cannot find any cheats on the web (like an equivalent of IDCLEV).

Share this post


Link to post
Ajapted said:

Can the game actually draw lower and upper textures? I've played the demo for a while but have yet to see anywhere with height differemces, and cannot find any cheats on the web (like an equivalent of IDCLEV).


I don't know how extensive the demo is, but most levels have a uniform floor and ceiling height. There's this place in the screenshot, where a central pillar is higher than the surrounding walls; and there's another map in the same hub where the floor height changes gradually -- I'll have to go back there, I want to check something. Let's start DOSBox...


Heh, transfer stack overflow... Ah, memories, memories...

Share this post


Link to post
Ajapted said:

...and cannot find any cheats on the web (like an equivalent of IDCLEV).

There doesn't seem to be any, I can only find savegame editing instructions...

Share this post


Link to post
Guest DILDOMASTER666

@Gez: In the case that you're talking about ruinadrn.map and ruinawat.map, that's a scripted event. Play around with ruinadrn.scr and ruinawat.scr to see what I mean.

@Ajapted: I theorize that it's not truly "upper" and "lower" textures, but perhaps the texture is simply drawn in the most appropriate place given a special case of height differences between the two areas. I have yet to work it out fully, but that's my best guess. The engine is definitely capable of drawing floors at two different heights.

Also, I've confirmed that the maps are 32x32 grids.

Share this post


Link to post

I read somewhere the engine could to sloped floors, which made me think that maybe height differences require a slope to hide the section of wall you'd otherwise see ("lowers"). But it sounds like the engine can actually draw lowers under the right conditions, maybe the texture needs to be specified somewhere.

Share this post


Link to post

I don't remember seeing any sloped floor anywhere, so I think this claim has about as much legitimacy as the claim that Dark Force was based on Doom's engine.

Anyway, I've been through several levels which use different ceiling textures now. CASTWINE is a good example.

However, it doesn't seem the engine has upper and lower textures like Doom, so this is why the ability to have several different floor/ceiling heights wasn't used -- even if it can, it'd just result in HOMs.

Share this post


Link to post
Guest DILDOMASTER666
Gez said:

However, it doesn't seem the engine has upper and lower textures like Doom, so this is why the ability to have several different floor/ceiling heights wasn't used -- even if it can, it'd just result in HOMs.


This unfortunately seems very likely after performing one or two extra experiments last night. The engine has the ability to draw areas of varied heights, but it doesn't have any ability to draw textures at the proper position (possibly due to logical limitations because of the way walls are drawn). Every attempt I've made to force the engine to render a wall in a space adjoining two different heights, I've always without fail gotten a fatal error describing "Possible monster outside level at [coords]".

Maybe I'm just doing it wrong.

Share this post


Link to post

There must be something for ambiant brightness as well. While it's not sector-based like in Doom, it still depends on which cell you are -- level 20 (LAVAMUD) shows this quite clearly.

Share this post


Link to post

Holy hell! Shadowcaster does have slopes!


Even more, it's a "dynamic" slope -- this part of the level starts with a ceiling (the weird ice-blue thing) at the same height as the rest. Then after solving a puzzle, it raises and this slope gradually appears, getting steeper as the ceiling goes higher.

The rendering is odd, though. It must use some sort of trick because when you're looking at it close while moving, the texture kinda shifts around. It looks like exploiting a glitch more than a real feature because of that.

But yeah, Shadowcaster did have slopes.

Share this post


Link to post
Guest DILDOMASTER666

Hahaha what the hell, that texturing is the worst thing I've ever seen in a videogame.

@Gez: If you observe any more engine-relavant oddities, would you mind documenting them thouroughly? Any info at all would significantly help with creating a map editor. Any technical documentation would help too; like ideas on how things are organized for a specific format or structure, or engine disassembly specifics etc...

Also, a little theory about the slopes. Maybe it uses the same "matrix transform" style math as the regular texturing for ceilings/floors, but is just rendered at different angles to fake it?

Share this post


Link to post
Fisk said:

Hahaha what the hell, that texturing is the worst thing I've ever seen in a videogame.

I agree. I don't even know what matter this blue thing is supposed to represent. Ice? Just above lava? Doesn't make much sense. (Though, to be fair, the lava isn't in that room just before solving the puzzle, so maybe the ceiling raising is a simplistic way of saying the ice ceiling is melting? Still, it doesn't really look like ice.)

Anyway, I've finished the game and noticed nothing else new or unusual. I've kept saves of practically all levels, though.

Looking in the executable (raven.exe), I found some insightful strings:

Object Editor ID %d exceeds number of objects on level...
Item Editor ID %d not found in items list for this level...
Door Editor ID %d exceeds number of DOORS in game...


Each level has its own item list.

Share this post


Link to post
Gez said:

The rendering is odd, though. It must use some sort of trick because when you're looking at it close while moving, the texture kinda shifts around. It looks like exploiting a glitch more than a real feature because of that.

ZDoom's slopes will also sometimes do this, if you use Line_AlignFloor or Line_AlignCeiling on them. It can be seen in the room of Espi's Eternal Doom 4 map (map27), near the beginning, with the big domed ceiling. All the panels are aligned to face the center, and they shift around awkwardly as you move and turn. So I doubt this means Shadowcaster's slopes are an exploit, per se, it's just a side effect of the engine not using precise enough math.

Share this post


Link to post
Guest DILDOMASTER666
Gez said:

Each level has its own item list.


Yeah. ".itm" is the items list, ".ojt" is a list of named decorative objects (8 character names), ".dor" is a list of door textures.

esselfortium said:

So I doubt this means Shadowcaster's slopes are an exploit, per se, it's just a side effect of the engine not using precise enough math.


This seems a theory more likely than my original statement. Most FPS's in Shadowcaster's age tended to use primarily fixed point math for rendering calculations, and a good example would be the rendering glitchiness one gets in DOOM2.EXE when viewing a wall longer than 1024 units. Maybe then, the Shadowcaster slopes are a loss of precision thing.

EDIT: Gez, in that level with the weird ice-ceiling thing, did you happen to notice if that face on the wall was there before AND after solving the puzzle, or only after?

Share this post


Link to post
Fisk said:

EDIT: Gez, in that level with the weird ice-ceiling thing, did you happen to notice if that face on the wall was there before AND after solving the puzzle, or only after?


Yes.


There are wall texture changes in other levels as well. The ones where you place statue heads in RUINSB, or the kahpa head that needs to be hit by an insect swarm in LAVAMINE.

There, they could have changed the head by the animated, lava-spewing version. They didn't. Why? Oversight, or maybe a limitation of the scripting language used (i.e., it wouldn't have animated)? I don't know. The ground texture used for the lava here is the one that's supposed to be right next to a fountain (notice how it's brighter on one edge instead of tiling correctly), so I'm willing to chalk it as oversight.

Share this post


Link to post
Guest DILDOMASTER666

I've noticed something interesting. It appears that Shadowcaster does not like drawing "unclosed blocks" (like having a 1-sided linedef in the middle of an open room in Doom), and if it finds any, it will quit with a "Possible monster outside level" message.

Share this post


Link to post

Just an idea, i dont think id software will modify the same engine twice for different people, ROTT uses a modified Wolf3D Engine too.
Might be worth a check. :)

BTW:
I would appreciate a map editor just for the sake of adding some more monster spawn points or modifying the existing ones to train my character.
There seems to be one just before you get to that floating chest and it spawns those red flesh-eating plants that drop the floating seed, but i am still a bit puzzled what triggers it and at which intervals.

Share this post


Link to post
Bastet Furry said:

Just an idea, i dont think id software will modify the same engine twice for different people, ROTT uses a modified Wolf3D Engine too.
Might be worth a check. :)


I think Apogee modified the Wolf3D engine themselves for ROTT, while the engine used by Shadowcaster wasn't a modified Wolf3D but something Carmack wrote when Doom was still in its pre-alpha stage. (I read he had written three or four engines between Wolf3D and Doom.)

Share this post


Link to post
Guest
This topic is now closed to further replies.
×