Author |
Message |
Darth Oosha Trandoshan
Joined: 24 Sep 2003
|
Posted: Mar 15, 2008 06:11 Post subject: Feature request: Debug mode, or something |
|
|
After the Windows DXL is 1.0ish, people may still want to build levels that run both on DXL and MacDF. To that end, it might be good to create a mode in DXL specifically designed to simulate MacDF's bugs and limitations, or at least provide warning messages about them. This would be a third mode, counting the classic and extended modes mentioned in this post. Is that likely to happen?
(Disclaimer: I'm not a level author, and have no plans to become one anytime soon.)
(Also, edit: corrected abbreviation for DarkXL.)
Last edited by Darth Oosha on Apr 01, 2008 06:43; edited 1 time in total |
|
lucius DarkXL Developer
Joined: 17 Feb 2008
|
Posted: Mar 15, 2008 06:59 Post subject: |
|
|
It's possible if someone can identify clearly for me what those bugs and limitations are and how they are different from the PC version of the game. I can test the PC version and do something like this but have no way of doing that for the Mac version. So I'm not ruling it out but I'd need some help
_________________ DarkXL....http://darkxl.wordpress.com |
|
Darth Oosha Trandoshan
Joined: 24 Sep 2003
|
Posted: Mar 15, 2008 16:32 Post subject: |
|
|
The main differences between the versions that I know of are:
* MacDF has a longer maximum viewing distance. That's not a big deal, since anything that looks decent with DOS DF's viewing distance should look fine on the Mac.
* When you pick up the Your Gear object in MacDF, you lose whatever inventory you had previously, including any keys.
* Something about the format of line breaks in cutscene.lst, and possibly other text files? I think that's what breaks Assassinate Darth Vader on the Mac, but you may have to ask one of the Mac people here for details.
|
|
lucius DarkXL Developer
Joined: 17 Feb 2008
|
Posted: Mar 15, 2008 18:26 Post subject: |
|
|
Ok, I'll keep that in mind for later. As a side note, do people even play the Mac version anymore? I was under the impression (which may be faulty) that the Mac version no longer worked well under newer Mac OS's and they actually played the DOS version under some sort of VM or something. If I am wrong, please let me know
_________________ DarkXL....http://darkxl.wordpress.com |
|
Darth Oosha Trandoshan
Joined: 24 Sep 2003
|
Posted: Mar 15, 2008 20:43 Post subject: |
|
|
I hadn't thought of that. I'm not sure what the best solution would be in that case; maybe make two different compatibility modes.
Also, more differences:
* MacDF expects high-resolution graphics for some interface elements. 320x200 load screens only fill the top left quarter of the screen, and custom in-game fonts (like those in Back to Yavin, Harkov and Condition Red) have a similar problem.
* I think one version or the other might have some messages in text.msg that the other doesn't.
* MacDF isn't good at playing any music other than DF's built-in GMDs, but that might not be worth emulating; better to just say "don't use custom music with MacDF".
|
|
lucius DarkXL Developer
Joined: 17 Feb 2008
|
Posted: Mar 15, 2008 20:57 Post subject: |
|
|
Ok thanks for the info. For now I'll keep this in mind and once the initial program is far enough along (1.0-ish as you say) I'll evaluate the need for this. If this is something that people want than great, if not than I'll spend the time implementing other features that people want. But you've certainly demonstrated the need for this - assuming people care about custom level compatibility between DarkXL and the Mac version.
Out of curiosity, are you a Mac user? Or are you just trying to cover all the bases?
Anyway thanks for the suggestions so far, it's nice to have people thinking ahead and figuring out problems that are likely to crop up.
Also if anyone else has any reasonable suggestions or comments please feel free to share .
_________________ DarkXL....http://darkxl.wordpress.com |
|
Darth Oosha Trandoshan
Joined: 24 Sep 2003
|
|
The MAZZTer Death Star
Joined: 25 Sep 2003
|
Posted: Mar 15, 2008 22:06 Post subject: |
|
|
Here is my ideas for compatibility and such:
- Options in DarkXL to emulate known glitches in the DOS and MacOS Jedi engines. They can be simple options in the UI ("Emulate Jedi engine glitches" "Emulate Mac Jedi engine glitches" "Don't emulate glitches") or extended options (each glitch gets a checkbox). These could be used to override per-level options specified by the level author (see below for my idea on how such a feature could work).
- A special file in a mod gob (darkxl.xml?) would allow mod authors to specify glitch emulation options as well as perhaps options to enable or change some behaviors in DarkXL (if we add more inf or logics this would be easy to avoid conflicting with existing levels, but some other extensions may not be so easy and would require such an option in a GOB to specify it should be enabled). This file could also specify mod metadata for frontends (like patchinfo.txt does for Jedi Knight mods for JK Patch).
- Special override files that allow levels which make use of special new INF or logics to still work in Dark Forces with reduced functionality. For example, we could have SECBASE.INF with the old Dark Forces stuff, and SECBASE.INX would be the same file but with the DarkXL only stuff in it. Granted it would be a bit of a chore to edit a level like this... but existing level editors should be able to handle extra INF and logics and such without exploding. One would just make their level for DarkXL only (in my example, SECBASE.INF would have DarkXL only INF) and then when they're ready to release, backup SECBASE.INF as SECBASE.INX and then fix up a Dark Forces only version if they want to).
- JEDI.LVL can be renamed to JEDI.LVX for DarkXL-only mods, and an empty JEDI.LVL with 0 levels (will this break DF? ) placed to keep Dark Forces from playing the level. Or maybe some other file.
IIRC GOB filenames are limited to 12 characters including the ., so we should stick to 8.3 names (Dark Forces might get confused with filesnames which deviate from that). Otherwise I'd suggest something like SECBASE.INFX cause I support the use and abuse of long file names.
The only problem with my overrides would be that it would be hard to edit such levels with existing editors, and IIRC we don't have the source code to WDFUSE or CDark so we couldn't fork them to add features to support DarkXL.
However it all depends on how Dark Forces would handle "bad" INF or logic names. If it ignores them we might not even need overrides.
Of course none of this is a concern at the moment since we don't HAVE any DarkXL-exclusive features (but would we REALLY be happy with JUST a Windows Dark Forces clone when we have access to the source code?!?!). I suppose we can cross that bridge when we come to it... the specific features we end up getting would end up influencing how we work with backwards compatibility anyways.
_________________ http://www.mzzt.net/ | I am a respectable admin with a respectable sig. |
|
lucius DarkXL Developer
Joined: 17 Feb 2008
|
Posted: Mar 15, 2008 22:21 Post subject: |
|
|
Those are some pretty good ideas. Obviously if you really want your levels to be backwards compatible with DOS or MAC DF that will be extra work or limit your choices. But "glitch" emulation will obviously be needed to some degree for older mods to work. This is one area were I will need help testing, to make sure I get all the necessary "glithes" in
For new mods, I think I could have a main MOD file which tells DarkXL which GOB files and script files to use - so we can organize all this easily and make it easy for people to run new mods.
As for new INF and Logics. As you may have seen from the main thread and one of the updates, logics are scripted and new user logics will go into a special script file (rather then appending to the existing script file). You can override logics, because it'll read the script functions from the user script file before the main game script file.
I am also considering scripting INF classes as well, so users can make their own INF commands.
_________________ DarkXL....http://darkxl.wordpress.com |
|
Darth Oosha Trandoshan
Joined: 24 Sep 2003
|
Posted: Mar 18, 2008 17:17 Post subject: |
|
|
Thinking about it further, it would also be useful to have some kind of automatic compatibility-check program, to warn people about potential problems without making them go and find them themselves. Other things to check for would include overlapping sectors (both because they're unrealistic and because they can cause ghosts), moving turning sectors (since the player can fall into the Phantom Zone), and too many objects or enemies.
(edit: realistic -> unrealistic)
Also, another difference:
* "Particles" in 3DOs show up smaller on the Mac when playing in high-resolution mode; 1 pixel at 640x400 instead of 1 pixel at 320x200.
Last edited by Darth Oosha on Mar 24, 2008 05:24; edited 1 time in total |
|
The MAZZTer Death Star
Joined: 25 Sep 2003
|
Posted: Mar 19, 2008 02:43 Post subject: |
|
|
A console of the Source/GoldSource/Quake variety would be good for logging such errors as well as a good debugging tool.
I think compatibility options should be focused more on engine behavior rather that graphical appearance.
Being able to load new mods from within the engine without having to restart would be neat.
_________________ http://www.mzzt.net/ | I am a respectable admin with a respectable sig. |
|
lucius DarkXL Developer
Joined: 17 Feb 2008
|
Posted: Mar 19, 2008 06:35 Post subject: |
|
|
I was planning on implementing a console at some point. I was going to put the cheat codes (and other commands) in the console.
And I agree that compatibililty for gameplay features is more important than graphics compatibility. However there will be graphics options as well so people can use the enhanced features that they want and that work well on their systems.
_________________ DarkXL....http://darkxl.wordpress.com |
|
|