Jump to content
Sign in to follow this  
Iran

PortableRA Beta

Recommended Posts

Ah ok. Well perhaps another bug(?). On soviet mission 3, where you have to kill the spy, I almost certainly remember the spy being coloured red, but in my version he is blue.

Share this post


Link to post

Fixed the spy color issue, also fixed all units showing up with yellow color after loading a 3.03 savegame. Both fixes have to do with my changes to the color scheme code, there's a function for the remap and it takes a RemapType argument, the game would just ignore it before and use the house color (set to the internal value of the country) but i changed that and I also allowed for a secondary color scheme (to split building and unit colors).

 

The new files have been uploaded. You can just grab the ra95.exe from the 14 mb PortableRA.zip file.

 

Thanks a lot for the testing, I really appreciate it. I really need some more testers but I doubt I will find many in the Red Alert community..Did you find any other issues?

 

I did tons of statistics code related patches with the idea that FunkyFr3sh starts adding support for his CnCNet v5 client to sending statistics data to a third party (e.g. the PlayCnC guys) for a ladder and for just a history of games, but I haven't heard much about it. I've added per player fields for the alliances for a player, whether a play is a spectator and whether the player is dead or not. I also fixed something that should tell which player quit a match but I don't know how that works with disconnects. There needs to be some differentiation between a player quiting and to a player losing connection, I think there are some internal variables to keep track whether connection was lost with another player or not but yeah Funky needs to test.

Edited by Iran

Share this post


Link to post

Actually yea

 

When cruisers shoot at AI helicopters doing the constant up and down landing on normal ground, the projectiles seem to get eaten. Like the projectiles will just miss as the helicopter lifts off, but the projectiles don't seem to hit the ground and do damage and the damage explosion shps and sounds are missing.

 

When an AI opponent is killed in skirmish, there is no longer a coloured text displayed at the top left of the screen saying "computer defeated". In fact there is no text at all.

 

 

Just a couple other things. Is it possible to have a version of FunkyFr3shs online match thing made just against the computer? So If I hit skirmish from your launcher, instead of the default RA1 AI skirmish screen, it would be a slightly different version of the CnCNet client; ie without the chat area and ready buttons. I miss the map preview that was ingame in the PSX version.

 

Also could either of you get it to work with mono, winetricks has failed me :P

 

 

I would have a poke myself, but perhaps someone is willing to make a PSX icons mod? I think its really just the ore silo that is different, but it really annoys me the DOS version is some alpha silo.

7Nrn0CC.png

 

 

Will there be any more AI enhancements at all? I realise this would break online compatibility, but the AI is so dull. And in terms of that, all the changes that you made but didn't include because they break online compatibility, will there be an 'option' to use them, so we who only play the AI can enjoy all the changes? Or what is the situation with all that again

Edited by r34ch

Share this post


Link to post

"Just a couple other things. Is it possible to have a version of FunkyFr3shs online match thing made just against the computer? So If I hit skirmish from your launcher, instead of the default RA1 AI skirmish screen, it would be a slightly different version of the CnCNet client; ie without the chat area and ready buttons. I miss the map preview that was ingame in the PSX version."

 

Yes, FunkyFr3sh has an option for this when starting the program up and a special command-line arg (dont know what it is though), I'll change the launcher so pressing the skirmish button launches that in the future.

 

"I would have a poke myself, but perhaps someone is willing to make a PSX icons mod? I think its really just the ore silo that is different, but it really annoys me the DOS version is some alpha silo."

 

Maybe if someone makes one. Gotta say the DOS silo icon is annoying me too..

 

"Will there be any more AI enhancements at all? I realise this would break online compatibility, but the AI is so dull. And in terms of that, all the changes that you made but didn't include because they break online compatibility, will there be an 'option' to use them, so we who only play the AI can enjoy all the changes? Or what is the situation with all that again"

 

A few small fixes but that's it. The changes I made can be enabled with FunkyFr3sh's client, at least most of them.

Share this post


Link to post

Wicked. Well I hope FunkyFr3sh can work out the mono issues, that'd be sweet. Aside from those minor issues I listed I think the only other thing I wish for is that you stumble across the code for the ore regrowth. Bit naff all the skirmishs end the same way on 'normal' ore amount maps but great work so far regardless.

Share this post


Link to post

What exactly are you interested in? The same ore regrowth setting from RULES.INI is used for both ore spread rate and ore growth around Ore Mines, I know the spots and I can patch them..

 

Ore Trucks should take as long to harvest ore and with the same amount of money gained by harvesting, but an ore patch should take longer to be completely depleted. The fact that ore runs out extremely quickly on pretty much every standard and expansion multiplayer map with the amount of players the map was designed for is ridiculous. Changing the actual growth still has undesirable effects (when no ore is left on map takes ages to regrow a decent amount, too much ore and the ore floods everything..) and is a workaround, it's still better than nothing I guess.

 

Try a custom RULES.INI file and play around with the following:

BailCount=28            ; number of 'bails' carried by a harvester
GemValue=50             ; gem credits per 'bail' carried by a harvester
GoldValue=25            ; gold credits per 'bail' carried by a harvester
OreTruckRate=1          ; speed that harvester truck manages ore [larger means slower]
You should play around with these values so in essence an Ore Truck harvests at the same rate (from Ore patch to back), gets the same amount of money for it but less of an Ore patch is depleted. So lower BailCount=, lower OreTruckRate= and higher GemValue= and OreValue= Edited by Iran

Share this post


Link to post

yes, offline skirmish is already possible

 

why couldnt you get winetricks to work ? Im not going to fix that mono stuff sry.. it runs perfectly on windows and linux with winetricks dotnet20 so the bugs are related to mono :(

Share this post


Link to post

You should be able to run the game itself without wine. Now that it doesn't use the registry for anything (that is enabled by default, right?) This should be pretty trivial.

 

Funky's launcher and the installer both use .net though...

Share this post


Link to post

 

why couldnt you get winetricks to work ?

(This is more of a note for me in future, should I reformat)

 

So I ran "winetricks dotnet20" in terminal, and downloaded the x86 exe it told me to do and put it in the right directory. When I ran the command again the dotnet installer popped up, but said I had a x64 system and returned error "Note: command 'wine dotnetfx.exe' returned status 26. Aborting.".

 

So I downloaded a x64 version exe of dotnet2.0 , put it in that dir, renamed it to match the x86 file name and ran the script again to get error "Note: command 'wine dotnetfx.exe' returned status 67. Aborting."

 

After going through a bunch of threads, I realised that the exe had to be the x86 one so put it back in the directory and deleted the x64 version. Eventually I came across these commands.

~$ export WINEARCH=win32
~$ export WINEPREFIX=$HOME/.new_wine 
~$ winetricks dotnet20

Some guy was having issues too and needed to manually delete .new_wine in the HOME dir, but I couldn't even find mine, so I went into HOME and just deleted every folder with the word 'wine' in it and ran the commands but with the second command as

~$ export WINEPREFIX=$HOME/.wine 

I ran the PortableRA installer and wine popped up and installed it as usual. This time however, leaving the checkbox ticked to 'run after install' the launcher popper up without the hassle of installing mono before.

 

Using winetricks seems the better option. When using mono the launcher background was tiled, and the options buttons were graphically glitched and the options would constantly reset. Not only that, but detect resolution now works accurately.

 

All I had to do to get the game to work properly again was to edit the winecfg for ddraw and wsock32.

 

 

 

I would strongly advise against using mono Iran :P

Edited by r34ch

Share this post


Link to post

If there's something not working correctly it's a bug in Mono, so file bug reports for them. Did you try out the RULES.INI Ore Truck changes I was talking about?

Share this post


Link to post

If there's something not working correctly it's a bug in Mono, so file bug reports for them. Did you try out the RULES.INI Ore Truck changes I was talking about?

Herp derp, I should have said to perhaps change the line recommending using mono on your linux page. Like you say the bugs are with mono, but they really mess up PortableRA.

 

So far winetricks is working flawlessly with both PortableRA and CnCNet v5 launcher.

 

 

EDIT: Yes I'm playing about with the values but Im trying to find a good balance. Often, half the ore in maps is wiped out due to fighting.

Edited by r34ch

Share this post


Link to post

I've added faster netcode for spawner/CnCNet v5, you can test it out with FunkyFr3sh's CnCNet v5 client. Seems to be a lot faster for some people. I also fixed an issue where the game would freeze for about 18 seconds before showing the 'reconnecting to player' dialog in-game. For statistics I added per player fields for whether a player resigned or not and whether connection was lost to that player (DIFFERENT FROM whether player voluntarily disconnected). I also added per player spawn location fields. They will be useful for a future CnCNet v5 ladder which I hope will be in development soon..

Edited by Iran

Share this post


Link to post

I've changed the way custom tutorial text strings are loaded for a map, no longer are the strings read from a custom renamed TUTORIAL.INI file, they are now read from the [Tutorial] section of a map itself if the right keyword is enabled. Works like this:

62. Added a new map keyword UseCustomTutorialText= (Yes/No) under the [bASIC] section. This keyword can be used to load custom tutorial text strings for your map. If enabled the map file will be used as TUTORIAL.INI file, meaning text strings are read from the [TUTORIAL] section of the map in the same format as in TUTORIAL.INI. If the keyword is missing TUTORIAL.INI tutorial text strings are loaded.

I've also added code so the spawner code can launch savegames and single player missions, this mean you can now write an external launcher for your single player missions or savegames.

 

In addition to that I've added support for mini-campaigns.

141. Added support for mini campaigns. This feature can be used in conjunction with the custom missions dialog feature. The following new keywords have been added that will be read from the [bASIC] section of a map:

 

NextMissionInCampaign= ; next mission filename (WITH file extension)

ScenarioNumber= ; The scenario number to set this mission to, this is used for internal stuff

; like default map selection animation, but also as DEFAULT next mission in map selection screen

MapSelectionAnimation= ; Map selection animation filename for this mission (WITH file extension)

MapSelectA= ; map selection choice A mission filename (WITH file extension)

MapSelectB= ; map selection choice B mission filename (WITH file extension)

MapSelectC= ; map selection choice C mission filename (WITH file extension)

 

Use it with the following keywords already recognized by the game in the [bASIC] section of a map:

 

EndOfGame=no

SkipScore=no

OneTimeOnly=no

SkipMapSelect=No

 

Example:

 

[basic]

ScenarioNumber=3 ; Set to level 3 internally

MapSelectionAnimation=MSAB.WSA

MapSelectA=scg02ea.ini

EndOfGame=no ; Not end of campaign

SkipScore=no ; Don't skip score screen (note the REDALERT.INI SkipScoreScreen= setting overwrites this)

OneTimeOnly=no ; This is used for the standalone missions, e.g. by all the expansions missions

SkipMapSelect=No

NextMissionInCampaign=scg01ea.ini ; because map select is used and it only

; has choice 'A' this isn't used, STILL NEEDED THOUGH

Edited by Iran

Share this post


Link to post

I've added support for special coop logic. This enables the single player AI logic for a map plus some code patches to fully support coop mode. The win/lose triggers also work online now. Add IsCoopMode=Yes to the [basic] section of the map, then add tech level and credits settings for Multi1..8 (however many human players you want to support), e.g.:

 

[Multi1]

Credits=115

TechLevel=6

 

You can have the players face the single player houses (houses other than Multi1-8, e.g. Spain) and with the new logic enabled the AI house will produce and build units and buildings just like in single player.

 

When IsCoopMode= is enabled the following changes/fixes are applied:

-win/lose trigger now works in multiplayer

-AI acts like in single player

-Credits, IQ and Tech Level per house info (from the map file) are now read properly

-Losing all your units doesn't make you dead (only win/lose triggers end the game)

-No multiplayer units are spawned

 

Things that I still need to do:

-Get alliances working (not sure if just multi1-8 aren't working)

-Figure out a few oddities I've noticed.

 

Maybe cool to have:

-Get country set for a house in map file working for multi1-8

-Get color set for a house in map file working for multi1-8

 

I've played a few conversions I made of campaign missions with people online and it seems to work fine now. I just finished doing the last Allies mission alone with someone spectating.

Edited by Iran

Share this post


Link to post

Yesterday when playing the converted last Allies mission I noticed Allen262 set Turkey's color to red for some reason (normally it's brown), I just fixed that in every mission he did that (2 campaign and 2 Counterstrike) and also updated the save games.

 

I fixed three issues with the full map preview generator for Red Alert:

-Sam site turret rotation wasn't being taken into account when drawing SAM Sites.

-Airfield had a bib (like in RAED), in the actual game the Airfield doesn't have a bib and it caused the bib to render over the terrain on missions like Allies mission 11B).

-Buildings were drawn after units and trees, I've fixed it so they're drawn before, it caused buildings that are placed behind trees to be drawn over the trees, and tanks on top of buildings (e.g. Service Depot) wouldn't show up because of it.

 

I've written a savegame info parser, you can find more info at: http://cnc-comm.com/community/index.php?topic=2567.msg16029#msg16029

Edited by Iran

Share this post


Link to post

I've added a ForceSingleCPU=(Yes/No) setting to REDALERT.INI, it does the same thing as the cnc-ddraw setting. I've also fixed a crash and glitch sterps reported when using the resign hotkey.

 

Edit: I've also adjusted the "reconnecting to player" dialog for hires.

Edited by Iran

Share this post


Link to post

Okay I fixed the Allies= issue with multiplayer houses in coop mode. ;)

Share this post


Link to post

Spectators now see the amount of credits every player has in the player list screen in the radar screen, instead of the amount of units a player has killed.

 

I added a new feature that allows you to modify the ore and gem values for AI players per difficulty:

144. You can now configure the gem and ore values for Ore Truck dumping for AI players and at various difficulty settings. This overwrites the GemValue= and OreValue= RULES.INI settings. The new added keywords are:

 

[AI]

; Easy/Normal/Hard here refers to the handicap set on

; the AI player, handicap 'easy' makes thing easier for

; the AI player and he is harder to beat than with 'hard'

; handicap

EasyAIGoldValue=300

EasyAIGemValue=350

NormalAIGoldValue=200

NormalAIGemValue=250

HardAIGoldValue=50

HardAIGemValue=150

 

If a keyword is missing -1 is used as value. If -1 is used as value the game uses the RULES.INI GemValue= setting for gems and OreValue= for ore. These keywords work in anything that functions as a RULES.INI kind of file, e.g. map files. So you can use these values in a map mod.

Added ReenableAITechUpCheck=(Yes/No) under the [AI] section of files that act like RULES.INI files (e.g. RULES.INI, AFTMATH.INI and map files). This re-enables the check the game does before allowing the AI to build a Radar Dome. This option has been added as this patch breaks some special (coop) maps which rely on this logic.

 

I had to revert the campaign savegames included with my patch installer and downloadable from my site back to 3.03 savegames as whenever i modify what's saved ra303p will break (3.03 savegames are loaded fine). This also means that 3.3p savegames will likely break between patch versions. :/

 

I've updated the stats.dmp parser so it parses all the new statistics field I've added to my patch.

 

Added fixes for two naval exploits: repairing on the move and repairing on enemy naval yards. These fixes are applied by default in single player and skirmish and during spawner games. (Fix taken from AlexB's Arda, many thanks for also explaining the fix)

 

Messages typed by yourself ingame are now displayed just like messages from other players.

Edited by Iran

Share this post


Link to post

Hey Iran, I've been playing about with those INI settings and have discovered some basic stuff.

 

 

BailCount = The number of bails carried by a harvester. Affects the visual pips although not really an issue with your pips fix (like the mig now having 3) Increasing this past 28 means the pips 'reset' when the OT has harvested past this amount. Generally leaves an empty pip at the end. Decreasing again leaves empty pips.

 

56 = depletes ~7/8 cells of ore before returning

19 = depletes ~2 cells of ore before returning

28 = depletes ~3/4 cells of ore before returning

 

GemValue and GoldValue = pretty self explanatory

 

OreTruckRate = This is the speed each scoop animation is played (after the initial scoop animation - which stays at a default rate for some reason, unless you order an OT to mine another cell mid scoop animation - its a little glitchy) and the dump animation. Cranking this up slows the gathering and dumping, but the 'scoops' per ore patch stay the same.

 

 

 

When you play about with these values, its a bandaid method to try and get the economy to stay the same, minus the ore depletion. The ore harvesting timings and credit amounts are off no matter what you do.

 

No matter what I change, it appears each 'growth stage' of an ore/gem cell has a certain value that is hard coded, which is obviously the issue at hand. What that value is and in relation to what, I cant really tell.

 

To test further, I would need to see all the pips on the OT as it mines, rather than just the 7 pips. As well as a map with all varying stages of ore, with the ore spread and ore growth turned off.

 

 

 

But from what I can tell..

 

1 scoop animation (excluding the initial scoop) = $0, but can deplete an 'almost empty' cell of ore.

2 scoop animations (excluding the initial scoop) = $25 (1 bail?)

12 scoop animations (excluding the initial scoop) = depleted ore cell from full (i think) = $275 (11 bails?)

~30 scoop animations (excluding the initial scoops) = full load = $700

 

when ore 'grows' while mining a cell, it increases the scoop animation count by one.

 

 

Because the animations seem a little glitchy, I can't work out what's really happening, but I think each cell of ore (perhaps linked to its growth stage shp) has a value (maybe a credit value and a multiplier? Or simply bails?) which is 'scanned' by the Ore Truck before each scoop animation. As this value decreases, it in turn affects the ore frame shp and increases the bail count in the Ore Truck.

 

Oddly, it seems the animations have a count-1 thing going on, even excluding the buggy first scoop animation (1 scoop = 0 bails, 12 scoops = 11 bails) I can't say for sure because the numbers don't quite add up with the glitchy animations and glitchy pips, but ~30 scoop animations for a full load seems pretty close to the default 28 bails an Ore Truck can carry (29 scoops = 28 bails?).

 

So hopefully it would be a case of locating that 'value', which dictates the credit value / bail count of an ore cell and perhaps doubling it, for a 'longer economy' game mode.

 

 

This is all speculation though, and perhaps what you figure already. I guess finding the code is the hardest part :P

 

 

Also I noticed playing about with those values changes how the AI plays, as they focus much more on infantry (although I tested the long games on medium and not hard)

kUiE7qG.png

Share this post


Link to post

The AI just keeps buying infantry until it has almost no money, that maybe why. Spectate AI players playing against each other and you can see their credits in the player list.

 

Thanks for the testing, I feared what you said about the ore cell depletion stuff is the case...I'll add it to my to-do list. I want to add some extra trigger actions first though, and maybe a few AI patches I need to do still.

Share this post


Link to post

I've added more cool trigger actions (see the CnC-Comm thread).

 

I've also added a hotkey to make map snapshots (like with Yuri's Revenge Ares). When pressed ingame it generats a map file of the current situation ingame (plus all pre-programmed triggers, teams etc). For more info see: http://cnc-comm.com/community/index.php?topic=2602.0

 

Here's some vids of new features for map makers (there are many more!):

 

Edited by Iran

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×