Difference between revisions of "ZVision"

Jump to navigation Jump to search
4 bytes removed ,  05:11, 23 September 2013
no edit summary
m (moved Z-engine to ZVision: The engine was renamed)
Line 1: Line 1:
{{EngineDescription|
{{EngineDescription|
         name=Z-engine|
         name=ZVision|
         developer=[[User:RichieSams|RichieSams]]|
         developer=[[User:RichieSams|RichieSams]]|
         companies=[[Activision]]|
         companies=[[Activision]]|
Line 8: Line 8:
}}
}}


The Z-engine was the engine used by [[Activision]] in [[Zork Nemesis]] and [[Zork: Grand Inquisitor]].
The ZVision was the engine used by [[Activision]] in [[Zork Nemesis]] and [[Zork: Grand Inquisitor]].


This engine is being added by the GSoC student [[User:RichieSams|RichieSams]] to ScummVM as part of the GSoC 2013.
This engine is being added by the GSoC student [[User:RichieSams|RichieSams]] to ScummVM as part of the GSoC 2013.


The ScummVM engine uses Marisa Chan's Z-engine re-implementation, which is available from [http://github.com/Marisa-Chan/Zengine http://github.com/Marisa-Chan/Zengine], as a reference.
The ScummVM engine uses Marisa Chan's ZVision re-implementation, which is available from [http://github.com/Marisa-Chan/Zengine http://github.com/Marisa-Chan/Zengine], as a reference.


It should be noted that from a technical viewpoint, this engine has nothing in common with the [[MADE]] engine used for [[Return to Zork]].
It should be noted that from a technical viewpoint, this engine has nothing in common with the [[MADE]] engine used for [[Return to Zork]].
Line 24: Line 24:
* Add graceful failure for when .str isn't parsed correctly.
* Add graceful failure for when .str isn't parsed correctly.


==List of TODO's for Z-Engine to be playable==
==List of TODO's for ZVision to be playable==


* Fix audio problems in videos
* Fix audio problems in videos
Line 31: Line 31:
** The current model puts each chunk into a separate AudioStream and then queues the streams
** The current model puts each chunk into a separate AudioStream and then queues the streams
** This is being worked on by clone2727
** This is being worked on by clone2727
* Finish implementing the rest of the ResultActions. (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zengine/actions.h actions.h])
* Finish implementing the rest of the ResultActions. (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zvision/actions.h actions.h])
** ActionDebug
** ActionDebug
** ActionDisableVenus
** ActionDisableVenus
Line 78: Line 78:
** This would require keeping track of what room you're in so that you can use the correct parent folder
** This would require keeping track of what room you're in so that you can use the correct parent folder
** Look at NEMESIS.ZIX and INQUIS.ZIX
** Look at NEMESIS.ZIX and INQUIS.ZIX
* Re-order the if-then statements in scr ResultAction parsing to use the order of highest occurance (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zengine/scr_file_handling.cpp#L150 scr_file_handling.cpp: Line 150])
* Re-order the if-then statements in scr ResultAction parsing to use the order of highest occurance (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zvision/scr_file_handling.cpp#L150 scr_file_handling.cpp: Line 150])
* Evaluate all in-engine warnings/debug messages and perhaps move them to higher debug channels (Or ZEngine specific debug channels)
* Evaluate all in-engine warnings/debug messages and perhaps move them to higher debug channels (Or ZVision specific debug channels)
* Clean out unused member functions from the Console class (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zengine/console.h console.h])
* Clean out unused member functions from the Console class (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zvision/console.h console.h])
* Convert pointer initializers to ''nullptr'' instead of ''0''
* Convert pointer initializers to ''nullptr'' instead of ''0''
* Add 'true' UTF-16 support for non-english versions of the game. (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zengine/string_manager.cpp#L214 StringManager])
* Add 'true' UTF-16 support for non-english versions of the game. (See [https://github.com/RichieSams/scummvm/blob/zengine/engines/zvision/string_manager.cpp#L214 StringManager])


==Current Progress==
==Current Progress==
45

edits

Navigation menu