-
Notifications
You must be signed in to change notification settings - Fork 62
State
degenerated1123 edited this page Dec 7, 2016
·
9 revisions
- Working
- Interpreting all of the daedalus-instructions
- Calling functions, stack, etc
- Calling externals
- Initializing instances
- TODO:
- Classes are described in
Daedalus::registerGothicEngineClasses
, which can be done automatically. The Daedalus-Symbols of the classes are actually in order, so we can just map everything using that, instead of making use of an evil makro. - Symbols have unused variables and are very heavy, which could be improved
-
Externals.cpp
is currently containing everything and should be split up. - Creating an NPC is pretty messy, as there are externals defined inside some classes in the
Daedalus
-namespace, triggering callbacks to REGoth-code, pre- and post-versions... That can be improved.
- Classes are described in
- Works
- Extracting the world-mesh
- Putting vobs
- Initializing the world using script-functions (inserting items/npcs)
- TODO
- Not all vobs implemented (particle-systems, decals)
- Loader is crammed into the
WorldInstance
-class, which can be improved greatly. - Preprocessing of the worldmesh and collisionmesh takes ages. Can be cached or speed up.
- Could be loaded in parallel
- Works
- All vob-types supported by the .zen-loader, except mobs!
- Inserting NPCs/Items from json-file instead of startup-script
- Export/Import of all major controllers
- TODO
- Read mobs (Some work is done for that already!)
- Compress on the fly, maybe do some simple encryption
- Loader is crammed into
WorldInstance
as well, which can be improved.
- Works
- Opening ASCII- and BinSafe-Files.
- Reading WorldMesh-data
- Reading VobTree
- zCVob
- oCMOB
- oCMobInter
- oCMobContainer
- Reading Waynet
- TODO:
- Vobs
- Particle-Effects
- Other types of Mobs
- Decals
- Triggers
- Ambient-Sounds
- Movers
- more?
- Vobs
- Done
- TODO
- Remove internal data copy
- TODO
- Remove internal data copy
- Works
- Reading some of the contents of the text-version in Gothic 1
- TODO
- Most features. Parser is pretty bare as well.
- Binary files used by G2 (G1 uses text) not supported at all
- TODO
- Remove internal data copy
- Done
- Wrote some code, but never tested it. Should be working, I guess.
- TODO
- Remove internal data copy
- Everything needed by the game works. Format is very verbose.
- TODO
- Use a union in the opcodes to make them smaller! (PARStackOpCode)