6635d5b3bf571

6635d5b3bfdba
2 Guests are here.
 

6635d5b3c03cfhank morgan

6635d5b3c0430
Found and fixed the particular bugs that caused the problem for you.  I've uploaded a partially repaired save file on the github issue thread.

I've also just uploaded a new binary release and the development environment at
https://github.com/hankmorgan/UnderworldExporter/releases

Configuration of the game paths has changed slightly so please read the readme.txt before beginning.

Main changes from the previous release is Underworld 2 support which has vastly improved but is still incomplete.

6635d5b3c05ceicemann

6635d5b3c061f
On a side note it's a shame that development on the Terra Nova end isn't planned for anything further. Be good if much later on down the line once Underworld 1&2 and System Shock are fully working to get that operation as well. A all in one engine (much like the Doom source ports which also do Heretic, Hexen and Strife) would be great to have around.
« Last Edit: 17. January 2018, 09:19:31 by icemann »
6635d5b3c0752
Didn't realize terra nova used the same engine.

6635d5b3c0864Kilg0re_Tr0ut

6635d5b3c08b0
Hank, I ran into a problem with that same flying potion segment in Level 2. When I drink the potion, the view screen goes black. I sent Save files to Github.

6635d5b3c0981hank morgan

6635d5b3c09ca
Just dropping by to say I've pushed out some updated binaries recently. Including Linux support, a raft of bug fixes and an overhauled AI.

https://github.com/hankmorgan/UnderworldExporter/releases

Acknowledged by 2 members: Marvin, hemebond

6635d5b3c0a5fBlackAddler

6635d5b3c0aa7
You should add the ability to bind to the other mouse buttons, and resize the UI elements in fullscreen.

6635d5b3c0bbagertius

Soundblaster Music Pack
6635d5b3c0c06
Even though Hank supplied 3 nice Music Packs, I was missing the simple soundblaster music from when I used to play it back in the day.
Found it on YouTube here: https://www.youtube.com/watch?v=UfFYJ42Rfws&list=PL7530A6F8A020F77C
And created a Music Pack for Underworld Exporter here: http://www.mediafire.com/file/7474inhr0p6j725/UW1_SB.zip

Hank, feel free to include it in the Git Release if you like!

6635d5b3c0ca1icemann

6635d5b3c0d02
Damn. It's been ages since we got an update.

Hank, we want an update :p.

6635d5b3c0ddchank morgan

6635d5b3c0e25
I'll try and write up a proper update in a couple of weeks. Took a wee break for a while to recharge. I've been ripping into Underworld 2 mainly. A lot of previously undocumented systems. I've discovered 2 new categories of game variables that were not documented in previous projects and an event system are the highlights of those. I have to sit down and fully test  but I think having the critical path completable is not a million miles away at this point.
6635d5b3c0f24
Any update on your little project?
Acknowledged by: icemann

6635d5b3c1342hank morgan

6635d5b3c138f
Yes. I have. Finally.

First up. Development has slowed a bit, not due to lack of enthusiasm on my part but mainly from a mix of real life work pressures getting in the way. I last posted here almost a year ago so here are some highlights since then.

+ UW2 has become very playable. 
+ I have a basic save game functionality working in UW2. Unfortunately this is not backwardly compatible due to a lack of a working compressor for UW2 data files. Most of the save game formats are now almost fully understood. Loading of save files works fairly well but I need to audit it in detail to ensure I am not missing key values.
+ Many of the previously undiscovered scheduled events in UW2 are now implemented.
+ A recent discovered allowed me to properly implement usage of all game variables in UW2. Previously undocumented on top of quest and game variables there were two other types of variables which explain why the save files are so large compared to UW1.
+ Inspired by developments with System Shock editing I've cobbled together a simple save/map/object and art editor in C# for the two underworlds. This is as much for providing a future tool for editing as an aid for research to eventually replace the original exporter tool which is showing it's age.
+Most conversations are working as they should.
+All lot of the steps in the main quest are working in isolation.
+I have (ugly) 3d models implemented for the items that need them.
+I finally have a texture shader that handles the palette cycles properly and reacts to light consistently.
+Most triggers and a vast majority of the traps are implemented. I have a fairly full list of the "hack_traps" compiled and working. A lot of the levels are in a stable, traversable state.  My favourite discovery in the implementation of the traps was how the ice collapsing works in the Ice Caverns. I think there are about three known hack traps that I don't understand at this point.
+A number of UW2 specific spells are implemented but the main code structure for UW2 magic has been built. Just detail work from here on for specific spells.

One thing I'm running into a lot is things that happen in the game but are never really noticed by the player. For instance if you are familiar with the tomb of praetor Loth you'll know that on the last level there is a switch that spawns a mist cloud. Passing through the mist gives a cryptic message about a tingling feeling and as far as the player is concerned that is that. Well what happens and is not mentioned anywhere in walk-throughs is that if you are carrying a healing potion then that gets turned into a poison potion. Not only that but a poison potion that (from a data storage point of view) is different to all other potions in the game. I'm probably the only person to ever notice that in 25+ years.

Another thing I see with the event system is actions that were seemingly set up to happen in game but for whatever reason doesn't happen. Notable examples. Returning the Banner to Killorn keep is supposed to to change a texture on a wall to show it has been returned and hung up. Another one is a minor character you meet has to move position after you meet them. As a result there is scripting to extinguish his camp-fire when he moves away. Again this doesn't happen in vanilla but because I've implemented the rules with a currently partial understanding of how things are enabled both these events happen in game.
Understanding how this file works is my big technical hurdle to jump. I can read the events and the conditions that drive them but there is a header to each set of events in the file but I still don't understand what is happening and how/why the file should change as each  event occurs. I've been putting off looking at it just to avoid frustration...

Again all these little details have to be understood and implemented. From how getting thrown in jail works to this weekends big discovery about how animated objects control themselves (looping, duration etc). Much of this was partially documented in the original documentation but not in a complete way that made me realise what was happening. So again implementing/testing this fully will take a bit of time. However I look at it like building a rope bridge. Each rope I put across the river makes the whole structure better and as I eliminate one mystery it makes the remaining mysteries easier to understand.

6635d5b3c1598JosiahJack

6635d5b3c15e2
Do you mind sharing your palette cycling shader?   :)  :thumb:

Sounds fun.  In the end will we still need the original game files put in our StreamingAssets folder to play?

6635d5b3c168cicemann

6635d5b3c16df
I'd also highly recommend documenting all your game engine discoveries. That stuff can be of tremendous help to future projects.

All the stuff TSSHP documented helped many later on projects.
6635d5b3c24df
Most triggers and a vast majority of the traps are implemented. I have a fairly full list of the "hack_traps" compiled and working.
That's really great - my assumption was that they were always there for implementing built-in effects so the fact you've traced what they're doing is fantastic.

One thing I'm running into a lot is things that happen in the game but are never really noticed by the player. For instance if you are familiar with the tomb of praetor Loth you'll know that on the last level there is a switch that spawns a mist cloud. Passing through the mist gives a cryptic message about a tingling feeling and as far as the player is concerned that is that. Well what happens and is not mentioned anywhere in walk-throughs is that if you are carrying a healing potion then that gets turned into a poison potion.
I remember playing UW2 again recently and wondering what the message meant - now I know!  I don't tend to carry healing potions but that's something I'll definitely test on my next playthrough.

As icemann says - if you can make sure the stuff you're learning is documented within the project files (or elsewhere) then that'd be extremely useful for future reference as well as for your "tool" (I think it's gone a bit further than that by now...) :)

6635d5b3c28abhank morgan

6635d5b3c2907
Do you mind sharing your palette cycling shader?   :)  :thumb:

Sounds fun.  In the end will we still need the original game files put in our StreamingAssets folder to play?

No problem. It's up on the github. Shader
To cycle the colours create a texture2D array of the various palette cycles and periodically update the shader parameter for the palette as follows
Shader.SetGlobalTexture("_ColorPaletteIn", paletteArray[paletteIndex]);

Note I have an issue with it in the editor that causes it to not render there. So when you are working on it in development you can change the word ForwardAdd to ForwardBase and it will display in fullbright in the editor window.

In terms of loading assets all you need to do is point the path in the config.ini to the location of the game executable folder.
     
6635d5b3c2bc9
You can also use my shader as is or change it as needed.
It should work nicely with shadows. It currently uses separate emissive texture. I would like it to filter the lower palette indexes in shader and use color as emissive when appropriate. Now I build the emission texture when parsing the bitmap.
Acknowledged by: JosiahJack
2 Guests are here.
It starts where it ends. It always does.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
6635d5b3c729a