Since you make and newpost new release, I assume you know a bit about the changelog.
Auswaschbar wrote:You must be doing somethign completely wrong, as that part of the code wasn't even touched.
That part of the code was touched, denial is not an acceptable answer. And I'm not the one doing something completly wrong, since it is broken even when I'm not using my stuff but both official lobbies.
Following script, generated by my own Kernel_Panic_3.X_Launcher.exe:
- Works in 0.79.1.0
- Does not work in 0.79.1.1: All AI spawns in the top left corner instead of their proper startpos.
Code: Select all
// To run this script, drag and drop over Spring.exe
//
// K.P.L. (Kernel Panic Launcher) Generated Script
// Very Hard: 1v3 - Player is n┬░1 in [0..3] and good (Network)
[GAME]
{
GameType=Kernel_Panic_3.5.sd7;
Mapname=Marble_Madness_Map.smf;
[MODOPTIONS]
{
// KP specific:
nowalls=1;// Because the AI can't handle them
nospecials=0;// Set to make it simpler
ons=4;// Shielded gamemode, 0 for disabled, 2 for weak, 4 for ultra
sos=0;// Initial amount, 0 for disabled
colorwars=0;// Time in minutes before doom, 0 for disabled
// Generic, but still applying to KP:
GameMode=1;
// 0 for "Kill everything!"
// 1 for "Kill all factories!"
// 2 for "Kill the Kernel!"
ghostedbuildings=1;
fixedallies=0;
MaxUnits=512;
MinSpeed=0.1;
MaxSpeed=10;
// Irrelevant for KP:
StartMetal=1024;
StartEnergy=1024;
}
HostIP=localhost;
HostPort=1377;
IsHost=1;
StartPosType=0;// 0 for fixed, 1 for random, 2 for chosen
MyPlayerNum=0;
MyPlayerName=Single_Player;
NumPlayers=1;
NumUsers=4;
NumTeams=4;
NumAllyTeams=2;
// List of human controlled players:
[PLAYER0]
{
name=Single_Player;
Team=1;
Spectator=0;
}
// List of AI controlled players:
[AI0]
{
Name=Enemy Bot;
ShortName=Kernel Panic AI;
//Version=?;
Team=0;
Host=0;// Number of the PLAYER hosting the AI
}
[AI2]
{
Name=Enemy Bot;
ShortName=Kernel Panic AI;
//Version=?;
Team=2;
Host=0;// Number of the PLAYER hosting the AI
}
[AI3]
{
Name=Enemy Bot;
ShortName=Kernel Panic AI;
//Version=?;
Team=3;
Host=0;// Number of the PLAYER hosting the AI
}
// List of "teams" (or "players" depending on terminology):
[TEAM0]
{
TeamLeader=0;
AllyTeam=1;
Handicap=0;
Side=Hacker;
RGBColor=0.0000 0.7176 0.9882;
AIDLL=Kernel Panic AI;
}
[TEAM1]
{
TeamLeader=0;
AllyTeam=0;
Handicap=0;
Side=Network;
RGBColor=0.9020 0.2314 0.0000;
}
[TEAM2]
{
TeamLeader=0;
AllyTeam=1;
Handicap=0;
Side=Hacker;
RGBColor=0.7961 0.0980 1.0000;
AIDLL=Kernel Panic AI;
}
[TEAM3]
{
TeamLeader=0;
AllyTeam=1;
Handicap=0;
Side=Hacker;
RGBColor=0.2039 0.8784 0.0000;
AIDLL=Kernel Panic AI;
}
// List of ally teams: This is for assymetrical alliances
[ALLYTEAM0]
{
NumAllies=0;
}
[ALLYTEAM1]
{
NumAllies=0;
}
// List of restrictions
NumRestrictions=0;
[RESTRICT]
{
}
}
Following script, generated by SpringLobby 0.0.1.10475
- Works fine with Spring 0.79.1.0.
- Does not work under Spring 0.79.1.1: It awaits "choose pos", which never happens in AI battle.
Code: Select all
[GAME]
{
HostIP=localhost;
HostPort=8452;
IsHost=1;
MyPlayerName=NoName;
ModHash=166043544;
MapHash=4236272102;
Mapname=Data Cache L1.smf;
GameType=Kernel Panic 3.5;
startpostype=3;
[mapoptions]
{
}
[modoptions]
{
fixedallies=1;
ghostedbuildings=1;
nospecials=0;
systemonly=0;
colorwars=0;
maxspeed=5;
maxunits=1000;
minspeed=0;
sos=0;
gamemode=1;
metaltogeo=0;
ons=0;
}
NumRestrictions=0;
[RESTRICT]
{
}
NumPlayers=1;
NumUsers=3;
[PLAYER2]
{
Name=NoName;
CountryCode=;
Spectator=0;
Rank=0;
IsFromDemo=0;
Team=0;
}
[AI0]
{
Name=Bot1;
ShortName=BaczekKPAI;
Version=1.2;
Team=1;
Host=2;
[Options]
{
}
}
[AI1]
{
Name=Bot2;
ShortName=BaczekKPAI;
Version=1.2;
Team=2;
Host=2;
[Options]
{
}
}
[TEAM1]
{
TeamLeader=2;
StartPosX=3872;
StartPosZ=224;
AllyTeam=1;
RGBColor=0.941176 0.823529 0;
Side=System;
Handicap=0;
}
[TEAM2]
{
TeamLeader=2;
StartPosX=224;
StartPosZ=224;
AllyTeam=2;
RGBColor=0.501961 0.501961 0.501961;
Side=System;
Handicap=0;
}
[TEAM0]
{
TeamLeader=2;
StartPosX=224;
StartPosZ=2848;
AllyTeam=0;
RGBColor=1 1 0;
Side=System;
Handicap=0;
}
[ALLYTEAM1]
{
NumAllies=0;
}
[ALLYTEAM2]
{
NumAllies=0;
}
[ALLYTEAM0]
{
NumAllies=0;
}
}
Following script, generated by TASClient 0.48 beta
- Works fine under 0.79.1.0
- Does not work under Spring 0.79.1.1: It awaits "choose pos", which never happens since I'm speccing AI battle. Using CTRL+ENTER make both AI spawn at 96,96 instead of their proper start pos.
Code: Select all
[GAME]
{
Mapname=Marble_Madness_Map.smf;
Maphash=-71828748;
[modoptions]
{
MaxUnits=1000;
GameMode=2;
maxspeed=5;
minspeed=0;
fixedallies=1;
ghostedbuildings=1;
metaltogeo=auto;
ons=0;
sos=0;
colorwars=0;
nospecials=0;
systemonly=0;
}
StartPosType=1;
GameType=Kernel Panic 3.5;
ModHash=166043544;
HostIP=localhost;
HostPort=8452;
MyPlayerNum=0;
MyPlayerName=zwzsg;
IsHost=-1;
NumPlayers=1;
[PLAYER0]
{
Name=zwzsg;
countryCode=fr;
Rank=4;
Spectator=1;
}
[AI0]
{
Name=Bot;
ShortName=Kernel Panic AI;
Team=1;
Host=0;
}
[AI1]
{
Name=Bot2;
ShortName=Kernel Panic AI;
Team=2;
Host=0;
}
[TEAM1]
{
TeamLeader=0;
AllyTeam=1;
RgbColor=1 0 0 ;
Side=Hacker;
Handicap=0;
}
[TEAM2]
{
TeamLeader=0;
AllyTeam=2;
RgbColor=0.101960784313725 1 0 ;
Side=Network;
Handicap=0;
}
NumTeams=2;
[ALLYTEAM1]
{
NumAllies=0;
}
[ALLYTEAM2]
{
NumAllies=0;
}
NumRestrictions=0;
}
If I'd allowed to interpret without devs insulting me, I would say that:
- StartPosType=1; is broken for AI (but not humans), it makes AI always spawn at 96,96
- When there are 0 human player, it waits for "choose pos" while it should not.
Note: When running Spring.exe directly, pick mod, map, and AI, the behavior is same between 0.79.1.0 and 0.79.1.1: I have a message "waiting for player, press Ctrl enter" (not "choose pos"), and when I do press Ctrl Enter, the AI spawn in a correct start pos.