May 25, 2001, 09:31
|
#1
|
King
Local Time: 12:20
Local Date: October 31, 2010
Join Date: Jan 2000
Location: homeless, Praha, Czech Republic
Posts: 2,603
|
I am not hacking yet (a general reminding program)
Imagine this:
1.
You decided to build a settler at Lyon: you plan that he will go to Paris when built, Paris will be set as his supporting city, then he will move to hill near Paris to mine it, then he will buid a city at specifyied square.
But your civ empire is very large. Later in the game, your settler is blinking. But you cannot remember your plans.
But there is another window running on your machine: it holds a copy of the map of your civ empire. You click on the "copy" of your settler and a small memo window opens: it contains three lines:
Paris: home
33/53: mine
33/47: build a city
and all Paris and squares of 33/53 and 33/47 are highlighted on the "copy" map.
2.
Or you plan to rearrange your workers in Lyon in 1950 BC and put them back in 1850 BC (you want to lower the shield production temporarily for example): you insert your plans in the memo window of Lyon and Lyon will blink in 1950 and 1850 automatically.
3.
you want to switch the barracks production to a granary when pottery is discovered
you want to change the tax rate when some key tech is discovered
you want to move a unit from a fortress to a city if the city reaches size 4 (martial law)
you want to be reminded about oedo years
etc., etc...
Generally, a "bookmark" could be attached to an unit, a city, a square, or all civilization.
My idea is specified more detailedly at Civ3-The List of Ideas for Firaxis: PLAYER INTERFACE (ver 2.0) . See my post from January 01, 2001 19:44.
But
1. I don't know Win programming
2. I don't know the format of .sav file
3. my time is limited
But I am prepared to participate if other programmers will be willing to create a team and to make a such program.
Last edited by SlowThinker; May 25, 2001 at 13:39.
|
|
|
|
May 25, 2001, 11:17
|
#2
|
Just another peon
Local Time: 05:20
Local Date: October 31, 2010
Join Date: Nov 1999
Location: who killed Poly
Posts: 22,919
|
I doubt i would use it for that type of thing, but it would be a godsend for caravan management
RAH
|
|
|
|
May 25, 2001, 12:43
|
#3
|
King
Local Time: 02:20
Local Date: October 31, 2010
Join Date: Dec 1969
Location: Emeryville, CA, USA
Posts: 1,658
|
Slow Thinker:
First, there is a way to read and write directly from/to the memory in single player. Multiplayer is also doable but somebody may hack the program and make a cheat so I won't do it myself.
How to do it: I use Visual Studio 6.0 from MicroSoft for the purpose. I create a project, edit the resource (i.e., build a window with those ok and cancel bottons), then copy the codes provided by a game hacking website (also some other similar sites), modify them (plug in the memory addresses obtained from running a game trainer program), then compile and run. Of course you need to know C/C++ in order to understand how each piece of code works. But that's it. It's a lot easier than you can imagine.
Your ides will be difficult to realize since we don't know the address for a settler before it is being built. You probably can only get a plan for the settler after it is being built.
|
|
|
|
May 25, 2001, 13:40
|
#4
|
King
Local Time: 12:20
Local Date: October 31, 2010
Join Date: Jan 2000
Location: homeless, Praha, Czech Republic
Posts: 2,603
|
The first post was edited a little.
Xin Yu,
Quote:
|
First, there is a way to read and write directly from/to the memory in single player.
|
How did you obtain adresses? Which ones do you know?
Quote:
|
then copy the codes provided by the above website
|
Which website?
Quote:
|
addresses obtained from running a game trainer program
|
Quote:
|
Your ides will be difficult to realize since we don't know the address for a settler before it is being built. You probably can only get a plan for the settler after it is being built.
|
The program may keep the memo/record and find out the address when the production of the settler is finished. Or not?
I would like to know
map, which part is revealed (or is it possible to get a bitmap from the memory?)
positions of items (units, cities...)
caravan (goods) and settler ("irrigated" turns held by a settler) specifications, harmed units
events (years, seafaring was discovered, city reached size 5, production finished...)
|
|
|
|
May 25, 2001, 13:49
|
#5
|
King
Local Time: 02:20
Local Date: October 31, 2010
Join Date: Dec 1969
Location: Emeryville, CA, USA
Posts: 1,658
|
Slow Thinker: I sent you a pm for the website and the trainer program info.
|
|
|
|
May 25, 2001, 14:38
|
#6
|
King
Local Time: 12:20
Local Date: October 31, 2010
Join Date: Jan 2000
Location: homeless, Praha, Czech Republic
Posts: 2,603
|
Thank you Xin Yu. I believe it may be relatively easy but also time consuming. Much more for me than for an experienced programmer.
Unfortunately, I can't do it now.
|
|
|
|
May 25, 2001, 17:10
|
#7
|
Emperor
Local Time: 06:20
Local Date: October 31, 2010
Join Date: Apr 2000
Location: New Haven, CT
Posts: 4,790
|
I don't think its possible...
__________________
"You're the biggest user of hindsight that I've ever known. Your favorite team, in any sport, is the one that just won. If you were a woman, you'd likely be a slut." - Slowwhand, to Imran
Eschewing silly games since December 4, 2005
|
|
|
|
May 25, 2001, 17:40
|
#8
|
King
Local Time: 12:20
Local Date: October 31, 2010
Join Date: Jan 2000
Location: homeless, Praha, Czech Republic
Posts: 2,603
|
Quote:
|
Originally posted by FireDragon
I don't think its possible...
|
Why not?
Problems may occur with descrambling status of game only:
The program may do it[list=1][*]via .sav file: the program saves a game and reads needed information from the .sav file.
(must be doable IMHO)[*]via memory directly
(I can imagine problems: Civ may manage memory "dynamically", i.e. it may move data within the memory)[/list=1]
Xin Yu,
could you tell us the way how are data stored in the memory roughly?
I think you had to find at least placement of cities (shield production) and gold.
Last edited by SlowThinker; May 25, 2001 at 17:47.
|
|
|
|
May 25, 2001, 18:18
|
#9
|
King
Local Time: 02:20
Local Date: October 31, 2010
Join Date: Dec 1969
Location: Emeryville, CA, USA
Posts: 1,658
|
Cities: start from a certain point in the memory, every 88 bytes stores all info for a city -- I call it the city block. There are also some information stored for the 'current' city -- I call it current city block (I haven't got the whole picture yet). Whenever a city window is opened, certain bytes will show a string 'City of AAA Treasury XXXX golds' (that's exactly what will be shown on the city screent's title bar). So you can check a) if you are in a city window, b) which city it is, and c) do you have enough money to buy production. You can either search the city name in the city block for a match (There is a problem when you give the same name for several cities), or you can modify the 'current city block' bytes directly (the problem for this approach is that sometimes you don't have all the information you need in the current city block').
Money info is stored in another block and each civ has its own address for money. Once you know which civ is playing, you can change money pretty easily.
|
|
|
|
May 26, 2001, 23:19
|
#10
|
King
Local Time: 11:20
Local Date: October 31, 2010
Join Date: Oct 2000
Location: Saint-Sulpice - France
Posts: 2,616
|
ST
I think that Mark Everson is at work with ideas close to yours
("Clash of Civs").
It should be harmless (and perhaps very useful) to contact him.
|
|
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is On
|
|
|
All times are GMT -4. The time now is 06:20.
|
|