"Very Difficult Choice" Mod, irc channel: irc.quakenet.org/vdc

Information, How-to's, and discussion about mod'ing Master of Orion II.
Semmelbaecker
Posts:39
Joined:Sat Sep 15, 2012 4:11 pm

Postby Semmelbaecker » Mon Nov 12, 2012 1:34 pm

Overlord2, how do you do that anyway? I dont understand how certain things are possible and others not. Do you have the source code or do you work with a decompiler?

Cheers,
Semmel

User avatar
Overlord2
Posts:661
Joined:Wed Jun 13, 2007 5:25 pm

Postby Overlord2 » Mon Nov 12, 2012 1:52 pm

I got a partner who works with debugger, performing asm code analysis. As a result of his work I can get some offsets for constants used in various calculations in moo2 engine. Changing those constants changes the gameplay. Most things were added to OCL_Improved editor though.

Semmelbaecker
Posts:39
Joined:Sat Sep 15, 2012 4:11 pm

Postby Semmelbaecker » Mon Nov 12, 2012 2:23 pm

uff.. so you change the sourcecode directly? wow, thats .. quite some difficult coding magic! would be great to get the original have there been attempts to get access to the original source code and make files etc?

User avatar
Overlord2
Posts:661
Joined:Wed Jun 13, 2007 5:25 pm

Postby Overlord2 » Mon Nov 12, 2012 2:47 pm

uff.. so you change the sourcecode directly? wow, thats .. quite some difficult coding magic! would be great to get the original have there been attempts to get access to the original source code and make files etc?
Source code is something that it is compiled later. No, we work with asm code of the game and change it where possible by changing respective bytes of the exe.

Semmelbaecker
Posts:39
Joined:Sat Sep 15, 2012 4:11 pm

Postby Semmelbaecker » Tue Nov 13, 2012 4:43 pm

Ohh right sorry, thats what I ment. dont tell anyone!

Well, if you change the ASM code directly, can you change jump positions in the code or does that break everything? So I am basically asking if you can add functionality to the code or are you restricted to replace existing code with the same length of replacement code?
If you cant change the length of the asm commandchains, the easiest would be to replace constants with other constants of the same data type. More complex would it be to replace actual algorithm fragments with different ones of the same length in asm-commands..
I dont really know how asm-jumps (function calls) work.. do they point to the absolute adresses of the goal?

User avatar
Darza
Posts:134
Joined:Tue Oct 02, 2012 10:09 am

Postby Darza » Tue Nov 13, 2012 7:42 pm

Well, in fact you compile machine code from source code, not reverse, so no need to excuses. Understand it right, Overlord2 have no idea about it at all, guy who do it for him have, its his job. And job of Overlord2 mainly is in borrowing or direct steal of other's ideas, plus adding some own random ones just to distract, and also in creating of incomprehensibly and erroneous data files. And in calling it "My Mode".

Catalyst_Kh
Posts:119
Joined:Sat Aug 25, 2012 7:49 pm

Postby Catalyst_Kh » Wed Nov 14, 2012 3:34 am

Image

angra
Posts:25
Joined:Wed Aug 29, 2012 12:34 pm

Postby angra » Wed Nov 14, 2012 11:55 am

I dont really know how asm-jumps (function calls) work.. do they point to the absolute adresses of the goal?
Either. Jumps can be absolute segment:offset, offset relative to segment and offset relative to current position. AFAIR, calls are a bit more restricted, there can't be offset relative to current position. It is quite possible to add more code and calls to it in RAM but it is hard to apply this modifications to EXE file. So most popular method of modifying DOS EXE is replacing of existing code with new one.
Well, in fact you compile machine code from source code, not reverse, so no need to excuses.
It is quite possible to use machine code as source and "compile" it to script. And I'm talking not about disassembling.
Understand it right, Overlord2 have no idea about it at all, guy who do it for him have, its his job. And job of Overlord2 mainly is in borrowing or direct steal of other's ideas, plus adding some own random ones just to distract, and also in creating of incomprehensibly and erroneous data files. And in calling it "My Mode".
The most stupid Diablo 2 mod I've played was created by tech guy, coder. Someone can be good coder but awful game designer and vice versa. Ability to do smart compiling of existing ideas/code is more important for creating good mod/game than ability to implement some raw idea in code.

User avatar
Darza
Posts:134
Joined:Tue Oct 02, 2012 10:09 am

Postby Darza » Wed Nov 14, 2012 12:46 pm

First. Java isnt our case now, obviously.
Second. Where did i sayd what this is bad? Its quite usual and normal process. And of course ability of smart compiling is very important, fully agree. Till recent time there was 2 problems - but now someone who can work with code appeared, so now is left only one of them, you sayd the most important.

User avatar
Overlord2
Posts:661
Joined:Wed Jun 13, 2007 5:25 pm

Postby Overlord2 » Wed Nov 14, 2012 2:01 pm

@Semmel
You can add jumps to perform new code in other place of the exe. But it is rather complicated procedure. Also replacing existing code with the same length of replacement code is possible. Anyway, why are you asking?

@Darza
Well, in fact you compile machine code from source code, not reverse, so no need to excuses.
Indeed. But Semmel was talking about changing source code, not the machine code, so I corrected him.
....Overlord2 have no idea about it at all
This is a lie, I understand how it works, just don't know the machine code. Who gave you right to spread lies?
And job of Overlord2 mainly is in borrowing or direct steal of other's ideas
You can't borrow or steal ideas, this is nonsense. Ideas cannot belong to anyone.
Generally, what the hell do you want, darza?

Semmelbaecker
Posts:39
Joined:Sat Sep 15, 2012 4:11 pm

Postby Semmelbaecker » Wed Nov 14, 2012 4:04 pm

You can add jumps to perform new code in other place of the exe. But it is rather complicated procedure. Also replacing existing code with the same length of replacement code is possible. Anyway, why are you asking?
Well, I was asking because I coded c, c++, java and I inclined to offer you my help. But I have never tried to do ASM code directly. I know in principle how it works, but in reality I have no idea. So I wanted to know how exactly you do your modding. Unfortunately, its out of my comfort zone.. :(

And yes, i said "source code" but i ment "mashine code". So I used the wrong word because I was in a hurry when I was writing and my brain mixed up. So you were absolutely right to correct me ;-)

User avatar
Overlord2
Posts:661
Joined:Wed Jun 13, 2007 5:25 pm

Postby Overlord2 » Wed Nov 14, 2012 5:37 pm

yeah, knowledge of asm code is rather rare skill...however this is what is needed for the modding.

Mustard
Posts:30
Joined:Sat Aug 18, 2012 4:10 pm

Postby Mustard » Fri Nov 16, 2012 7:02 am

yeah, knowledge of asm code is rather rare skill...however this is what is needed for the modding.
Most modding uses it annoyingly. Even modding for gameboy games requires ASM

nadia911
Posts:1
Joined:Sun Nov 18, 2012 3:15 pm

Postby nadia911 » Sun Nov 18, 2012 3:20 pm

Thank you very much for your work Overlord, please continue with it, many people are aware of your work and do not give importance to the comments nonsense will do nothing useful.

Regards from Argentina and excuse my english.

Nadia

User avatar
Overlord2
Posts:661
Joined:Wed Jun 13, 2007 5:25 pm

Postby Overlord2 » Mon Nov 19, 2012 10:15 am

Thanks, I appreciate it. I just can't understand why some people can be dissatisfied with my work when no one forces them to use it and which therewith is free.


Return to “Game Modifications”

Who is online

Users browsing this forum: No registered users and 11 guests