Savestates were changed in the new version to save more data, has aqfaq (or anyone else) tried using gens 9Z to see if it fixes the desync problem in Dune?
How fleeting are all human passions compared with the massive continuity of ducks.
Joined: 4/8/2005
Posts: 1573
Location: Gone for a year, just for varietyyyyyyyyy!!
I did some testing and to me it seems that Gens10 might have solved the desynch problems. However, a true TAS attempt on the first level should be made to be sure about that. Unfortunately, I have no motivation for it at the moment.
00FF27E2 is the RAM address for the harvester #1 spice load. A harvester can carry 100 units of spice, each worth 7 monetary units. The hardest part in the first level is to manipulate the harvester to suck the spice as fast as possible. I have no idea how to do that.
Oh, by the way, I accidentally encountered a really funny bug. I autofired some buttons near my units and moved the cursor very fast here and there. The result was that the music got messed up somehow. It got slowed down and then sped up spontaneously. Also, when the level ended, two songs were played simultaneously during the score tally screen! What a mess of sound that was! Maybe the whole game can be torn to pieces, if some commands are delivered fast enough in some peculiar way?
Made a new try with Gens10a.
Seems to be working just fine.
Made a little test using mostly frame advance to play around. It is of course not perfect in any way.
Level 1 with Atredies in 3 min. I HATE that the harvester can't have ONE more unit of spice in it. That would have been enough for the level to complete a lot faster. :(
http://dehacked.2y.net/microstorage.php/info/894843225/Dune%20-%20The%20Battle%20for%20Arrakis%20%28U%29%20%5B%21%5D.gmv
Perhaps this doesn't rise much climaxes. But a real level with serious fights would.
I dare someone to make Level 9 without taking a hit.
Could be possible with some serious frame advance, planning and RAM-watching.
Another goal could be to finish Level 9 without building anything extra (radar could be allowed). Only use the starting units.
Anyways. If someone finds any more RAM-adresses, it would be great to have them posted. One thing that could come in handy is to switch off fog of war somehow, without affecting the GMV as a cheat would.
Does someone know the mechanics of the starport?
After all the prices changes in it. Does any one know whats affecting it? Would be sweet to have the RAM-addresses of each price in it so one better can keep track of it.
Also it would be great to have the mechanics of the death hand missile. It can be hard to aim it so that it hits the right place. Would be cool to have a LUA aim script or something, if possible. :)
Another thing that would be nice, again if LUA would be an option, is to draw red dashes that pin points the destination of enemy units.
Worked perfectly. Disabled Scroll B High.
One more thing that came to my mind would to have LUA scripts hi-light buildings that are low on energy.
That way one won't have to care to click around on the buildings to check wether they are damaged or not.
Would also be cool to find the RAM-addresses of the buildings so that we can monitor the health at all times.
Another task for LUA or RAM-watch would be to see all the things in construction, units and buildings. This is in perticular very good when one have more than one vehicle factory, hi-tech lab for building ornithopters, and what ever.
Would also be great to see a countdown to when a superweapon is ready.
Money alarm could come in handy. Something to check when the silos are full. This should not happen since the production of units may never stop in a TAS I think. :)
That was some more ideas. I'll post right away when it hits me.
Edit:
Perhaps code a LUA OSD that tells when a unit has finished it's task?
That way moving units and designate them new tasks will be more efficent.
Edit 2:
Continued to test levels and playing.
Finished level 2 now. I know it could have been done faster if I manually would have called the harvesters back earlier. Not much on the entertainment either. I went for 2700 credits instead of destroying the enemy. Harvesting the spice should be faster.
In game clock tells me the time of 6 minutes for this level, which is still a good result.
In earlier tests I managed to get 7-9 minutes.
Also did a rough test on how many refineries would be optimal. Conclusion is that three refineries is the best for this level when it comes to finish as soon as possible.
I will have to do some testing when it comes to cashflow on later levels. I think that 3 harvesters per refinery is a good estimation. Perhaps 2 refineries and 5-6 harvesters should bring cash fast enough?
Anyways. The link for the updated GMV is:
http://dehacked.2y.net/microstorage.php/info/1628664877/Dune%20-%20The%20Battle%20for%20Arrakis%20%28U%29%20%5B%21%5D-Level3.gmv
Joined: 4/8/2005
Posts: 1573
Location: Gone for a year, just for varietyyyyyyyyy!!
I suppose you haven't encountered any desynchs or sound problems at all? That's great.
Are you planning to make a full test run? That would be nice.
By the way, the old test run for the first level (linked also in the first post of this thread) is about 2000 frames faster. It can be improved further easily, because the selected-by-default concrete slab is redundantly re-selected from the construction yard.
It would be cool to have some luck-manipulation masters like DarkKobold and gia take a look at this game...
No desynchs so far. I am planning to make a full test run. This will however be merly a rough outlin. Not sure wether it will be submitable material.
Weird about the old test from level 1.
In the beginning I am 742. This is measured to when the harvester is full.
From the above point I measured how long time it took until the harvesters were empty again. This is where I loose 2172 frames some how.
Is the concrete slabs actually speeding up the production in all facilities?
Also another thing I noticed which is mostly due to some random factor is that from the point when the credit hits 1000, the old run only takes 71 frames until the level completion animation takes place. While in my new test run it takes 277 frames from 1000 credits to the animation where the carryalls flies over the screen.
Wonder what is going on? =)
Like you also stated Aqfaq, it would be awesome to have more people examine this game, and perhaps help out in the production of a TAS.
I still ask the question if it's correct to make this run in a single segment, or do each level separatly by accessing it via passwords?
I haven't checked wether or not it's easy to hexedit different gmv:s together in this game. If it's easy each level could be done separatley and then stitched together. It would be very convenient. :)
Joined: 4/8/2005
Posts: 1573
Location: Gone for a year, just for varietyyyyyyyyy!!
I suppose so. It's due to the better HP condition of the facility.
That is one of the many little details that require luck-manipulation. I believe the cursor movements affect it. Optimizing this would be a very suitable task for a bot. The bot would need to check when the level-end animation begins and what is the direction from where the carryalls enter the screen (because it takes them a different amount of time to fly past the screen depending on their flying direction).
I'd say no for level passwords.
If you want to search RAM addresses for building/unit hitpoints, here is an easy way to do it. Let's say you want to search the hitpoints for your construction yard:
1. Look for the construction yard's maximum hitpoints ("shield values") from Ledmeister's guide.
2. Perform a search for that value ("800" in the case of the construction yard)
3. Damage the construction yard. There should be only few values that decrease. (Some of the addresses seem to fluctuate, so you want to monitor the one that is stable.)
Just made a compare between two refineries.
Built two refineries.
One on concrete slabs 3x2 so it covers the entire refinery.
The second was built directly on the rock.
The results are shocking to me. :)
It took 2833 frames longer to empty a harvester in the refinery built directly on the ground, without concrete slabs.
I will try to measure other things, such as production as well.
But that was really valuable to know.
Made a new test of level 1. This time it's flawless (edit: when it comes to damage, not speed). No damage on my structures, and no death among my soldiers.
http://dehacked.2y.net/microstorage.php/info/655962820/Dune%20-%20The%20Battle%20for%20Arrakis%20%28U%29%20%5B%21%5D.gmv
Still I'm very concerned about the cycles of level completion. It's highly annoying. Seems that the check is only occuring once in a while.
Made a little analyse, not sure what good it is.
Col 1 indicates on what frame I command my harvester to enter the refinery.
Col 2 is the level completion time.
Col 3 is wether the carryalls are flying in from below, right, or above.
Frame 12072 - 12671 - From below
Frame 12073 - 12671 - From below
Frame 12075 - 12671 - From below
Frame 12081 - 12671 - From below
Frame 12095 - 12671 - From above
Frame 12100 - 12671 - From above
Frame 12110 - 12671 - From above
Frame 12139 - 12671 - From above
Frame 12160 - 12671 - From above
Frame 12200 - 12671 - From below
Frame 12253 - 12671 - From the right
This run is still slower than the first test run by 851 frames. The first run shows the level completion demo at 11820 frames. The carryalls are flying in from the left. If I have some time left over tomorrow I'll make another test.
One thing I noticed about the old run is that he builds the wind trap without the use of concrete slabs, whilst in my run, I use concrete slabs for everything.
This game will be a bitch when it comes to luck manipulating.
Also noticed that we did get the same ingame time of 0:02. Would be nice to have the RAM-adress for that.
Good night.
I ran some more tests again.
Again, it had to deal with how long time it takes to empty a harvester.
For example, when entering the refinery from a diagonal angle it seems to unload the harvester faster.
Placing the refinery on only one concrete (2x2 squares) didn't cause much drawback in my test. It will add up a lot of lost frames in the end though.
Health is the main issue of drawbacks. It slows production and emptying of harvesters. Always keep full health on all buildings.
Joined: 4/8/2005
Posts: 1573
Location: Gone for a year, just for varietyyyyyyyyy!!
I wonder how precise the slow-down effect is. Maybe it is enough to keep the health at the green level, or does every single damage point matter?
This could be tested easily by having a savestate at the beginning of a process (like spice unloading or unit construction) and then timing the process with different health values inserted to the building.
I can only speak for PC Dune 2: in the first 2-3 levels, there is no point whatsoever in building concrete. It just takes credits and increases the number of times you need to harvest spice to meet the quota.
For later buildings, it can matter, but often the slower building speed of factories does not matter, because you are still spending credits faster than you can gain them. I'm not even sure windpower does anything other than keeping your radar up (which you don't need in a TAS).
You will need the radar in order to produce more advance buildings and units as far as I know.
In Dune 2 for PC you can always click on the harvester to harvest spice quicker.
Found a funny cheat code yesterday which I can't recall that I've seen before. Enter 'VERSIONNUM' in the password field. :)
Is anyone else up for helping out with the game BTW?
This feels like a too big task to do single handed.
>You will need the radar in order to produce more advance buildings and units as far as I know.
Yes, of course. But the question is: does it need to be on? If the power is only needed to keep the radar showing its picture, you don't need to build more than one windtrap.
I don't think the harvester actually harvests faster by clicking: it just updates the numbers more often, in smaller amounts. I cannot promise that's true though, haven't tested.
I cannot help, busy with another project now. But I'll be here checking WIPs and giving tips when I can. :)
I will make a test to see if production speed is equal or worse when a vehicle factory is out of power.
Edit:
Done with testing vehicle factory productivity.
I think there is a great deal of randomness involved here.
As you can see, the winner in this test is Setup #2. No electricity, but 100% health. It even suggests that it's slower to have electricity powered buildings.
Results:
Setup:
Electricity is OFF.
Vehicle factory is built on rock instead of concrete.
Vechicle factory is down to 50% health.
10800 - starts to build quad
11632 - Blue bar is reseted
11733 - Quad appears
It takes 933 frames to build a quad when the conditions are as stated above.
It takes quad 101 frames to exit the factory after the blue bar is reseted.
------------
Setup:
Electricity is OFF.
Vehicle factory is built on rock instead of concrete.
Vechicle factory is fixed to 100% health.
10800 - Starts to build quad
11244 - Blue bar is reseted
11336 - Quad appears
It takes 536 frames to build a quad when the conditions are as stated above.
It takes quad 92 frames to exit the factory after the blue bar is reseted.
------------
Setup:
Electricity is ON.
Vehicle factory is built on rock instead of concrete.
Vechicle factory is down to 50% health.
9700 - Starts to build quad
10556 - Blue bar is reseted
10635 - Quad Appears
It takes 935 frames to build a quad when the conditions are as stated above.
It takes quad 79 frames to exit the factory after the blue bar is reseted.
------------
Setup:
Electricity is ON.
Vehicle factory is built on rock instead of concrete.
Vechicle factory is fixed to 100% health.
9900 - Starts to build quad
10351 - Blue bar is reseted
10463 - Quad appears
It takes 563 frames to build a quad when the conditions are as stated above.
It takes quad 112 frames to exit the factory after the blue bar is reseted.