|
-
GEngine
GEngine is a modified engine of Gothic 1. This modification was made by me and Vam.
Our goal was to make a bug-free and enhanced version of the game.
Now GEngine 1.18.2 is ready.
GEngine is a modification of the main executable of Gothic 1 ("GothicMod.exe"),
it can be used to play as original Gothic 1 as mods for it (Diccuric, MineMod, and so on).
New Features:
1) Gothic 2-like controls (left click to attack, instead of ctrl+up).
2) Support for widescreen monitors.
3) Fixed playing videos (on Win 7).
4) Enhanced chest animations (locks on chests are animated now).
5) Fixed link between triggers and movers after saving/loading (which could be broken in the original game after saving/loading, so the game could become impassable if the hero closed the grating on the way to old mine).
6) Minimap implemented (use Shift+M to activate).
7) Rings are displayed correctly in inventory.
8) Orcs can remove their axes now.
9) Fixed reaction of npcs when the hero transforms to an animal near them;
10) Removed equipping of best weapon when the hero transforms from animal back to human
11) Fixed climbing ladders (some ladders in old mine caused the hero to fall down)
12) Game plays sounds when the hero hits walls with sword/axe.
13) Characters cannot equip their bow and crossbow at the same time now;
14) Trading is more suitable because when you press Enter, the game adds nuggets to the opposite side automatically;
15) Fixed bug with drinking potions at the same time when some enemy hits the hero;
16) Improved cheat-mode: repaired F8 button (now it allows the hero to fly in any direction, not only to the north);
button 'I' allows to see chests and other npcs' inventory; button 'G' prints information who see/hear/smell the hero;
console command "spawnmass" has been repaired; commands "maximize"/"minimize" added.
17) ... and other smaller fixes and improvements.
GEngine can be installed over the original Gothic 1 game only. (And you must have the original game to install GEngine.)
In spite of GEngine contains parts of Piranha Bytes' work I suppose I may distribute GEngine because it's not commercial, and it doesn't do any harm to PB (because in any case it requires the original game to play).
Geändert von Kerrax (25.11.2012 um 16:51 Uhr)
-
Is there a bigger documentation included? I'd love to read some more about the improvements/changes you did.
-
wenn jemand mehr dazu sagen kann wäre es gut zu wissen was da geändert wird auser steuerung und 16:9
-
Zitat von Lehona
Is there a bigger documentation included? I'd love to read some more about the improvements/changes you did.
More new features were added to the first message. The full list of changes doesn't exist because nobody has made it..
-
Kann jemand bitte ein Bild von der Minimap machen? Würde mich interessiern, aber ich habe leider gerade kein Gothic 1 :/
-
Die erste Frage ist ja für mich, ob die überarbeitete Engine noch mit Ikarus kompatibel ist.
EWAGA MOD .... "echtes Gothic"!
-
Ganz spontan und mit gefährlichem Halbwissen würde ich sagen nein, da viele Adressen sich geändert haben dürften.
-
This is impressive...
Thank you for this awesome piece of Work!
I had a problem with the melee action.
When I tested the game it seemed impossible to strike sidewards with the melee weapons, is there
an possability to manipulate the game setting, to use the full fighting system again.
ng by Lmoere
"aber eins ist sicher, alles wird gut,"
---------------------------------Ich, auf der Esmeralda nahe Irdorath
-
Zitat von Lmoere
When I tested the game it seemed impossible to strike sidewards with the melee weapons, is there
an possability to manipulate the game setting, to use the full fighting system again.
There are three different methods to control the hero:
original Gothic 1 |
Ctrl+Up to attack, Ctrl+Up to action (take item, talk with npc, use mob); Ctrl+Right to attack right |
useGothic1Controls=1, useTrueGothic1Controls=1 |
Gothic 2 with option "use old controls" (can be changed in the main menu of Gothic 2) |
Ctrl+Up to attack, Ctrl/Left_click to action; Ctrl+Right to attack right |
useGothic1Controls=1, useTrueGothic1Controls=0 |
Gothic 2 by default |
Ctrl/Left_click to attack, Ctrl/Left_click to action; PageDown to attack right |
useGothic1Controls=0, useTrueGothic1Controls = 0 |
The third column describes options which you should to change in gengine.ini to activate this method to control the hero. You can use notepad to modify gengine.ini.
Geändert von Kerrax (26.11.2012 um 03:50 Uhr)
-
What about the Gothic.exe? Dalai Zoll asked about it, but I'm not sure whether you're translating the non-english posts: Has the .exe changed so that Ikarus might not work anymore?
-
Zitat von Lehona
What about the Gothic.exe? Dalai Zoll asked about it, but I'm not sure whether you're translating the non-english posts: Has the .exe changed so that Ikarus might not work anymore?
Ikarus is for Gothic 2 only, isn't it? GEngine doesn't support Gothic 2 zen- and script- format yet, so it cannot be used to play Gothic 2 and mods for it.
I have a plan to add required functionality to GEngine little by little, so I hope in future it will become a common engine which will make possible to play as Gothic 1 as Gothic 2 and mods for them. Unfortunately I change most of addresses, so Ikarus or any other scriptpaket will not work immediately. I see two ways: a) modify Ikarus to correct addresses for working with GEngine; or b) it's easier to implement a required functionality (new external functions, new cheat command, and so on) directly in GEngine instead of using direct memory access. I don't like direct memory access.
Geändert von Kerrax (25.11.2012 um 22:28 Uhr)
-
Zitat von Kerrax
Ikarus is for Gothic 2 only, isn't it? GEngine doesn't support Gothic 2 zen- and script- format yet, so it cannot be used to play in Gothic 2 and mods for it.
I have a plan to add required functionality to GEngine little by little, so I hope in future it will become a common engine which will make possible to play as Gothic 1 as Gothic 2 and mods for them. Unfortunately I change most of addresses, so Ikarus or any other scriptpaket will not work immediately. I see two ways: a) modify Ikarus to correct addresses for working with GEngine; or b) it's easier to implement a required functionality (new external functions, new cheat command, and so on) directly in GEngine instead of using direct memory access. I don't like direct memory access.
There is a version of Ikarus for G1 (However, LeGo isn't available for G1 - maybe you were thinking of that).
No one likes direct memory access (It's a hell of a mess), but I don't think killing it completely would be a good step currently. Any person that is interested in 'advanced scripting' has most likely worked with Ikarus already and is used to the way this stuff is handled in Gothic. Unless you provide a completely new backend (i.e. Ikarus-like functionality), you're denying yourself many experienced users. And even then already existing scripts might fail to work. Some scripts want to alter the engine code because that is a relatively simple yet effective way to achieve certain things (e.g. change a jnz to jmp etc.), that would be impossible without memory access (even simple hooks would have to change the code, but I guess you'd have that implemented in your engine).
Just providing a new set of addresses for Ikarus might be the best thing to do for now if you want to keep compatibility.
-
Zitat von Lehona
Just providing a new set of addresses for Ikarus might be the best thing to do for now if you want to keep compatibility.
Yes, I want
However it could be a not so good solution because addresses can be changed in GEngine in any next release, I cannot completely control that thing.
I think the better solution will be to write code in GEngine which intercepts MEM_WriteInt and other memory-access functions and automatically translates its arguments to the currently correct value. It's difficult to implement (I changed classes too), but that solution is suitable for everyone.
Geändert von Kerrax (26.11.2012 um 05:03 Uhr)
-
Awesome!
I'll test it right away.
Risenmodkit
"Du sagst mir jetzt, was du weißt, oder es gibt ein paar auf's Maul, Paul!"
-
Can the new .exe be disassembled similar to the old ones? In terms of information I mean. I haven't had a chance to look at it yet but if you need advanced Reverse Engineering knowledge that might be an extra barrier many people won't be willing to take to make existing scripts compatible (e.g. if you need to find the new adress of a certain part of code).
-
Zitat von Lehona
Can the new .exe be disassembled similar to the old ones?
There is no need to disassemble GEngine because I have the full source code of it.
That's why it's easier for me to implement a new external function than implement Ikarus support.
-
I should probably have a look at it before I say stuff, but: Do you replace the original Gothic.exe? If so, disassembling would still be useful because I don't want to distribute a second version if I change something in the engine code or even worse ask you to create a new version with the specific new external included...
-
Zitat von Lehona
I should probably have a look at it before I say stuff, but: Do you replace the original Gothic.exe?
GEngine doesn't replace any original files of Gothic 1. It uses even its own configuration file ("gengine.ini" instead of "gothic.ini"), and its own starter (GEngineStarter.exe instead of GothicStarter.exe). Also GEngine doesn't execute Gothic.exe (or GothicMod.exe), it uses its own code for all things.
If so, disassembling would still be useful because I don't want to distribute a second version if I change something in the engine code or even worse ask you to create a new version with the specific new external included...
I wouldn't like to create multiple variants of GEngine; my wish is to create a single common engine which will contain all necessary external functions required for any modmaker, and which will support as G1 as G2 mod format.
-
That's exactly what I'm saying: Technically you're replacing the Gothic.exe because it's not used anymore, so I can't do what I used to do in some of my scripts (altering the assembly at runtime). Obviously only a few people will ever do that because it's frickin' crazy, so maybe you should just ignore my 'complains' and do your stuff, it looks really cool
No one wants to distribute even a second concurrent version, that's exactly my point. And at least I never know what I'm going to implement next and what stuff of Gothic's code I need to kill to make it work - apparently that happens quite often -, so that's why I wish you'd possibly distribute the debug executable, not the release version? Guess it depends on how much performance and file size you lose by doing so. If it's not worth it, just ignore me, there are too few of me
-
If you're able to remove technical limitations of the original engine, like polygon limits and such, and add new graphical and gameplay-wise features, then this could change the modding community in a big way!!
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
|
|