Realism Invictus Pitboss game

:lol: there are so many leaders and civ, I hope they will be enough to delay the carnage to when we actually play

Touche, although I have my favorites, there are too many good choices for me to be disappointed with virtually any choice. Since so far as I know, no one else planning to play is an American, it would be fun to represent my own country in the game, so I think they'd be my first choice.

My other general favorites are:
- Germany
- Transoxiania
- Rome
- Russia
- Spain
- South China

Good question; I'm open to both. I've always liked scenarios and I'm currently playing the large earth map (not the huge one) in a singleplayer game. But I suppose there might be balancing issues in this case. What do you and other players think about it? If we choose a random map, I'd prefer Totestra mapscript which I think is probably the best. As for size, I think it also depends on how many human players there are. I'd say large with 4 human players, huge with 6 and giant with 8 although I'm not sure about the last one; I would let the default number of AI players for each map size. I think my pc can handle a giant map even if it's 3 years old (I've autoplayed some games to the end to check), but I don't know about others.

Huge world map would actually be a lot of fun in a multiplayer game, but we're going to be playing that for years probably if we do monthly sessions. I'm willing to commit to that (and possibly play for really long periods of time when we do play, to compromise the slower frequency), but a standard map would probably be twice as fast if that's a concern to any of you.

If we do a random map, I agree with Totestra, personally, but that actually has more to do with the pleasing and plausible geography it generates rather than gameplay implications. PlanetGenerator always makes really jagged and awkward coastlines which look ugly and which sometimes make for clunky play.
 
I don't think I would be able to play every weekend, so maybe this is too much of a commitment
 
I
I don't think I would be able to play every weekend, so maybe this is too much of a commitment

It should be once or twice per month, not every weekend. I also wouldn't be able to play every weekend. Would this be ok for you?
 
What sort of session length is everyone thinking? I'd be able to play for 4-6 hours at a time, probably.

I think we were talking about a couple of hours. I know the game will take a long time to finish, but given you're in the US and bluecivdoom in in India we have little choice. Maybe from time to time we can agree on a longer session but I suppose this is the best we can do for the moment. We'll see how the game will go on.
 
I think we were talking about a couple of hours. I know the game will take a long time to finish, but given you're in the US and bluecivdoom in in India we have little choice. Maybe from time to time we can agree on a longer session but I suppose this is the best we can do for the moment. We'll see how the game will go on.

Realistically, I'll be playing Realism Invictus for several more years, so an occasional collab game which doesn't finish for a long time is no problem for me.
 
Thanks, I've checked the patch, it's just xml and python changes, no update to the dll; we can use base 3.6+this patch 3.601 and my dll fix; I strongly advise we use my fix because when I tried autoplaying the game, half of the times it was impossible to finish the game because of the CTD caused by that bug in modern era.
I am in the modern era in my huge world map single player game right now, I do get the occasional CTD but it's the memory issue, what kind of bug are you experiencing?
 
I am in the modern era in my huge world map single player game right now, I do get the occasional CTD but it's the memory issue, what kind of bug are you experiencing?

There's a repeatable CTD which occurs on some occasion when AI is airbombing an improvemt, here's the relevant code which is embedded in the dll. The part "int iExperience = attackXPValue();" is causing a CTD because if attackXPValue is zero which sometimes happens then iExperience is also zero and hence you get a division by zero in the following lines, which is the cause for the CTD. I've simply fixed the problem by replacing the line in red with int iExperience = std::max(1, attackXPValue()); then you don't get a division by zero anymore, hence no more CTD. I autoplayed many games in the previous months and this problem arised almost half of the games I've autoplayed. You can reload a previous savegame and hope it doesn't happen again, but sometimes there's nothing to do, sooner or later it will happen. So I decided to fix this myself. I posted the fix and tagged Walter so he can add this fix for a future release but maybe he didn't see my post. Anyway, no other changes have been made and this fixes the repeatable CTD.


Code:
bool CvUnit::airBomb(int iX, int iY)
{
    CvCity* pCity;
    CvPlot* pPlot;
    CvWString szBuffer;

    if (!canAirBombAt(plot(), iX, iY))
    {
        return false;
    }

    pPlot = GC.getMapINLINE().plotINLINE(iX, iY);

    /* if (!isEnemy(pPlot->getTeam()))
    {
        getGroup()->groupDeclareWar(pPlot, true);
    } */ // Disabled by K-Mod

    if (!isEnemy(pPlot->getTeam()))
    {
        return false;
    }

    // < Air Combat Experience Start >
    if (!isEnemy(pPlot->getTeam()) && !GC.getGameINLINE().isBombNoMansLand())
    {
        return false;
    }
    // < Air Combat Experience End   >


    if (interceptTest(pPlot))
    {
        return true;
    }

    pCity = pPlot->getPlotCity();

    if (pCity != NULL)
    {
        pCity->changeDefenseModifier(-airBombCurrRate());

        szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_DEFENSES_REDUCED_TO", pCity->getNameKey(), pCity->getDefenseModifier(false), getNameKey());
        gDLL->getInterfaceIFace()->addHumanMessage(pCity->getOwnerINLINE(), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_BOMBARDED", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pCity->getX_INLINE(), pCity->getY_INLINE(), true, true);

        szBuffer = gDLL->getText("TXT_KEY_MISC_ENEMY_DEFENSES_REDUCED_TO", getNameKey(), pCity->getNameKey(), pCity->getDefenseModifier(false));
        gDLL->getInterfaceIFace()->addHumanMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_BOMBARD", MESSAGE_TYPE_INFO, NULL, (ColorTypes)GC.getInfoTypeForString("COLOR_GREEN"), pCity->getX_INLINE(), pCity->getY_INLINE());

        // < Air Combat Experience Start >
        if(GC.getGameINLINE().isExperienceGainByAttackingCities())
        {
            int iExperience = (int)((attackXPValue()*((float)pCity->getDefenseModifier(false)/100))/1.25);
            iExperience = range(iExperience, GC.getDefineINT("MIN_EXPERIENCE_PER_COMBAT"), GC.getDefineINT("MAX_EXPERIENCE_PER_COMBAT"));
            changeExperience(iExperience, maxXPValue(), false, pPlot->getOwnerINLINE() == getOwnerINLINE(), !isBarbarian());
        }
        // < Air Combat Experience End   >

    }
    else
    {
        if (pPlot->getImprovementType() != NO_IMPROVEMENT)
        {
            if (GC.getGameINLINE().getSorenRandNum(airBombCurrRate(), "Air Bomb - Offense") >=
                    GC.getGameINLINE().getSorenRandNum(GC.getImprovementInfo(pPlot->getImprovementType()).getAirBombDefense(), "Air Bomb - Defense"))
            {
                szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_UNIT_DESTROYED_IMP", getNameKey(), GC.getImprovementInfo(pPlot->getImprovementType()).getTextKeyWide());
                gDLL->getInterfaceIFace()->addHumanMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_PILLAGE", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_GREEN"), pPlot->getX_INLINE(), pPlot->getY_INLINE());

                if (pPlot->isOwned())
                {
                    szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_IMP_WAS_DESTROYED", GC.getImprovementInfo(pPlot->getImprovementType()).getTextKeyWide(), getNameKey(), getVisualCivAdjective(pPlot->getTeam()));
                    gDLL->getInterfaceIFace()->addHumanMessage(pPlot->getOwnerINLINE(), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_PILLAGED", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pPlot->getX_INLINE(), pPlot->getY_INLINE(), true, true);
                }

                // < Air Combat Experience Start >
                if(GC.getGameINLINE().isExperienceGainByDestroyingImprovements())
                {
                    int iExperience = attackXPValue();
                    iExperience = (GC.getImprovementInfo(pPlot->getImprovementType()).getAirBombDefense()/iExperience)/2;
                    iExperience = range(iExperience, GC.getDefineINT("MIN_EXPERIENCE_PER_COMBAT"), GC.getDefineINT("MAX_EXPERIENCE_PER_COMBAT"));
                    changeExperience(iExperience, maxXPValue(), false, pPlot->getOwnerINLINE() == getOwnerINLINE(), !isBarbarian());
                }
                // < Air Combat Experience End   >

                pPlot->setImprovementType((ImprovementTypes)(GC.getImprovementInfo(pPlot->getImprovementType()).getImprovementPillage()));
            }
            else
            {
                szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_UNIT_FAIL_DESTROY_IMP", getNameKey(), GC.getImprovementInfo(pPlot->getImprovementType()).getTextKeyWide());
                gDLL->getInterfaceIFace()->addHumanMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_BOMB_FAILS", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pPlot->getX_INLINE(), pPlot->getY_INLINE());
            }
        }

        // < Air Combat Experience Start >
        else if (pPlot->getRouteType() != NO_ROUTE)
        {
            if(GC.getGameINLINE().isRouteDestructionThroughAirBombs())
            {
                if (GC.getGameINLINE().getSorenRandNum(airBombCurrRate(), "Air Bomb - Offense") >=
                        GC.getGameINLINE().getSorenRandNum(GC.getRouteInfo(pPlot->getRouteType()).getAirBombDefense(), "Air Bomb - Defense"))
                {
                    szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_UNIT_DESTROYED_ROUTE", getNameKey(), GC.getRouteInfo(pPlot->getRouteType()).getTextKeyWide());
                    gDLL->getInterfaceIFace()->addMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_PILLAGE", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_GREEN"), pPlot->getX_INLINE(), pPlot->getY_INLINE());

                    if (pPlot->isOwned())
                    {
                        szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_ROUTE_WAS_DESTROYED", GC.getRouteInfo(pPlot->getRouteType()).getTextKeyWide(), getNameKey(), getVisualCivAdjective(pPlot->getTeam()));
                        gDLL->getInterfaceIFace()->addMessage(pPlot->getOwnerINLINE(), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_PILLAGED", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pPlot->getX_INLINE(), pPlot->getY_INLINE(), true, true);
                    }

                    if(GC.getGameINLINE().isExperienceGainByDestroyingRoutes())
                    {
                        int iExperience = attackXPValue();
                        iExperience = (GC.getRouteInfo(pPlot->getRouteType()).getAirBombDefense()/iExperience)/2;
                        iExperience = range(iExperience, GC.getDefineINT("MIN_EXPERIENCE_PER_COMBAT"), GC.getDefineINT("MAX_EXPERIENCE_PER_COMBAT"));
                        changeExperience(iExperience, maxXPValue(), false, pPlot->getOwnerINLINE() == getOwnerINLINE(), !isBarbarian());
                    }

                    pPlot->setRouteType(NO_ROUTE, true);
                }
                else
                {
                    szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_UNIT_FAIL_DESTROY_ROUTE", getNameKey(), GC.getRouteInfo(pPlot->getRouteType()).getTextKeyWide());
                    gDLL->getInterfaceIFace()->addMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_BOMB_FAILS", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pPlot->getX_INLINE(), pPlot->getY_INLINE());
                }
            }
        }
        // < Air Combat Experience End   >
    }

    setReconPlot(pPlot);

    setMadeAttack(true);
    changeMoves(GC.getMOVE_DENOMINATOR());

    if (pPlot->isActiveVisible(false))
    {
        CvAirMissionDefinition kAirMission;
        kAirMission.setMissionType(MISSION_AIRBOMB);
        kAirMission.setUnit(BATTLE_UNIT_ATTACKER, this);
        kAirMission.setUnit(BATTLE_UNIT_DEFENDER, NULL);
        kAirMission.setDamage(BATTLE_UNIT_DEFENDER, 0);
        kAirMission.setDamage(BATTLE_UNIT_ATTACKER, 0);
        kAirMission.setPlot(pPlot);
        kAirMission.setMissionTime(GC.getMissionInfo((MissionTypes)MISSION_AIRBOMB).getTime() * gDLL->getSecsPerTurn());

        gDLL->getEntityIFace()->AddMission(&kAirMission);
    }

    if (isSuicide())
    {
        kill(true);
    }

    return true;
}
 
Last edited:
poking my head here as well to show interest (and also interest in how yall finally end up setting up the pitboss stuff so I can copy that for my own offsite FFH games lol)
 
There's a repeatable CTD which occurs on some occasion when AI is airbombing an improvemt, here's the relevant code which is embedded in the dll. The part "int iExperience = attackXPValue();" is causing a CTD because if attackXPValue is zero which sometimes happens then iExperience is also zero and hence you get a division by zero in the following lines, which is the cause for the CTD. I've simply fixed the problem by replacing the line in red with int iExperience = std::max(1, attackXPValue()); then you don't get a division by zero anymore, hence no more CTD. I autoplayed many games in the previous months and this problem arised almost half of the games I've autoplayed. You can reload a previous savegame and hope it doesn't happen again, but sometimes there's nothing to do, sooner or later it will happen. So I decided to fix this myself. I posted the fix and tagged Walter so he can add this fix for a future release but maybe he didn't see my post. Anyway, no other changes have been made and this fixes the repeatable CTD.


Code:
bool CvUnit::airBomb(int iX, int iY)
{
    CvCity* pCity;
    CvPlot* pPlot;
    CvWString szBuffer;

    if (!canAirBombAt(plot(), iX, iY))
    {
        return false;
    }

    pPlot = GC.getMapINLINE().plotINLINE(iX, iY);

    /* if (!isEnemy(pPlot->getTeam()))
    {
        getGroup()->groupDeclareWar(pPlot, true);
    } */ // Disabled by K-Mod

    if (!isEnemy(pPlot->getTeam()))
    {
        return false;
    }

    // < Air Combat Experience Start >
    if (!isEnemy(pPlot->getTeam()) && !GC.getGameINLINE().isBombNoMansLand())
    {
        return false;
    }
    // < Air Combat Experience End   >


    if (interceptTest(pPlot))
    {
        return true;
    }

    pCity = pPlot->getPlotCity();

    if (pCity != NULL)
    {
        pCity->changeDefenseModifier(-airBombCurrRate());

        szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_DEFENSES_REDUCED_TO", pCity->getNameKey(), pCity->getDefenseModifier(false), getNameKey());
        gDLL->getInterfaceIFace()->addHumanMessage(pCity->getOwnerINLINE(), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_BOMBARDED", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pCity->getX_INLINE(), pCity->getY_INLINE(), true, true);

        szBuffer = gDLL->getText("TXT_KEY_MISC_ENEMY_DEFENSES_REDUCED_TO", getNameKey(), pCity->getNameKey(), pCity->getDefenseModifier(false));
        gDLL->getInterfaceIFace()->addHumanMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_BOMBARD", MESSAGE_TYPE_INFO, NULL, (ColorTypes)GC.getInfoTypeForString("COLOR_GREEN"), pCity->getX_INLINE(), pCity->getY_INLINE());

        // < Air Combat Experience Start >
        if(GC.getGameINLINE().isExperienceGainByAttackingCities())
        {
            int iExperience = (int)((attackXPValue()*((float)pCity->getDefenseModifier(false)/100))/1.25);
            iExperience = range(iExperience, GC.getDefineINT("MIN_EXPERIENCE_PER_COMBAT"), GC.getDefineINT("MAX_EXPERIENCE_PER_COMBAT"));
            changeExperience(iExperience, maxXPValue(), false, pPlot->getOwnerINLINE() == getOwnerINLINE(), !isBarbarian());
        }
        // < Air Combat Experience End   >

    }
    else
    {
        if (pPlot->getImprovementType() != NO_IMPROVEMENT)
        {
            if (GC.getGameINLINE().getSorenRandNum(airBombCurrRate(), "Air Bomb - Offense") >=
                    GC.getGameINLINE().getSorenRandNum(GC.getImprovementInfo(pPlot->getImprovementType()).getAirBombDefense(), "Air Bomb - Defense"))
            {
                szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_UNIT_DESTROYED_IMP", getNameKey(), GC.getImprovementInfo(pPlot->getImprovementType()).getTextKeyWide());
                gDLL->getInterfaceIFace()->addHumanMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_PILLAGE", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_GREEN"), pPlot->getX_INLINE(), pPlot->getY_INLINE());

                if (pPlot->isOwned())
                {
                    szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_IMP_WAS_DESTROYED", GC.getImprovementInfo(pPlot->getImprovementType()).getTextKeyWide(), getNameKey(), getVisualCivAdjective(pPlot->getTeam()));
                    gDLL->getInterfaceIFace()->addHumanMessage(pPlot->getOwnerINLINE(), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_PILLAGED", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pPlot->getX_INLINE(), pPlot->getY_INLINE(), true, true);
                }

                // < Air Combat Experience Start >
                if(GC.getGameINLINE().isExperienceGainByDestroyingImprovements())
                {
                    int iExperience = attackXPValue();
                    iExperience = (GC.getImprovementInfo(pPlot->getImprovementType()).getAirBombDefense()/iExperience)/2;
                    iExperience = range(iExperience, GC.getDefineINT("MIN_EXPERIENCE_PER_COMBAT"), GC.getDefineINT("MAX_EXPERIENCE_PER_COMBAT"));
                    changeExperience(iExperience, maxXPValue(), false, pPlot->getOwnerINLINE() == getOwnerINLINE(), !isBarbarian());
                }
                // < Air Combat Experience End   >

                pPlot->setImprovementType((ImprovementTypes)(GC.getImprovementInfo(pPlot->getImprovementType()).getImprovementPillage()));
            }
            else
            {
                szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_UNIT_FAIL_DESTROY_IMP", getNameKey(), GC.getImprovementInfo(pPlot->getImprovementType()).getTextKeyWide());
                gDLL->getInterfaceIFace()->addHumanMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_BOMB_FAILS", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pPlot->getX_INLINE(), pPlot->getY_INLINE());
            }
        }

        // < Air Combat Experience Start >
        else if (pPlot->getRouteType() != NO_ROUTE)
        {
            if(GC.getGameINLINE().isRouteDestructionThroughAirBombs())
            {
                if (GC.getGameINLINE().getSorenRandNum(airBombCurrRate(), "Air Bomb - Offense") >=
                        GC.getGameINLINE().getSorenRandNum(GC.getRouteInfo(pPlot->getRouteType()).getAirBombDefense(), "Air Bomb - Defense"))
                {
                    szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_UNIT_DESTROYED_ROUTE", getNameKey(), GC.getRouteInfo(pPlot->getRouteType()).getTextKeyWide());
                    gDLL->getInterfaceIFace()->addMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_PILLAGE", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_GREEN"), pPlot->getX_INLINE(), pPlot->getY_INLINE());

                    if (pPlot->isOwned())
                    {
                        szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_ROUTE_WAS_DESTROYED", GC.getRouteInfo(pPlot->getRouteType()).getTextKeyWide(), getNameKey(), getVisualCivAdjective(pPlot->getTeam()));
                        gDLL->getInterfaceIFace()->addMessage(pPlot->getOwnerINLINE(), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_PILLAGED", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pPlot->getX_INLINE(), pPlot->getY_INLINE(), true, true);
                    }

                    if(GC.getGameINLINE().isExperienceGainByDestroyingRoutes())
                    {
                        int iExperience = attackXPValue();
                        iExperience = (GC.getRouteInfo(pPlot->getRouteType()).getAirBombDefense()/iExperience)/2;
                        iExperience = range(iExperience, GC.getDefineINT("MIN_EXPERIENCE_PER_COMBAT"), GC.getDefineINT("MAX_EXPERIENCE_PER_COMBAT"));
                        changeExperience(iExperience, maxXPValue(), false, pPlot->getOwnerINLINE() == getOwnerINLINE(), !isBarbarian());
                    }

                    pPlot->setRouteType(NO_ROUTE, true);
                }
                else
                {
                    szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_UNIT_FAIL_DESTROY_ROUTE", getNameKey(), GC.getRouteInfo(pPlot->getRouteType()).getTextKeyWide());
                    gDLL->getInterfaceIFace()->addMessage(getOwnerINLINE(), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_BOMB_FAILS", MESSAGE_TYPE_INFO, getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_RED"), pPlot->getX_INLINE(), pPlot->getY_INLINE());
                }
            }
        }
        // < Air Combat Experience End   >
    }

    setReconPlot(pPlot);

    setMadeAttack(true);
    changeMoves(GC.getMOVE_DENOMINATOR());

    if (pPlot->isActiveVisible(false))
    {
        CvAirMissionDefinition kAirMission;
        kAirMission.setMissionType(MISSION_AIRBOMB);
        kAirMission.setUnit(BATTLE_UNIT_ATTACKER, this);
        kAirMission.setUnit(BATTLE_UNIT_DEFENDER, NULL);
        kAirMission.setDamage(BATTLE_UNIT_DEFENDER, 0);
        kAirMission.setDamage(BATTLE_UNIT_ATTACKER, 0);
        kAirMission.setPlot(pPlot);
        kAirMission.setMissionTime(GC.getMissionInfo((MissionTypes)MISSION_AIRBOMB).getTime() * gDLL->getSecsPerTurn());

        gDLL->getEntityIFace()->AddMission(&kAirMission);
    }

    if (isSuicide())
    {
        kill(true);
    }

    return true;
}
Oh okay, nice spot!
 
So, @FireBlaze and @Monsijo are you ok on playing once or twice per month, probably 18-20 GMT or 19-21 GMT during weekends?

For everyone: is it more comfortable to use this forum/thread or do you prefer to use Discord here: https://discord.gg/57RY7sjb ? Four of us are already in the discord channel but I have no preferences. Maybe the discord is more immediate when we play, but I'm ok with any proposal.
 
that's a couple hours in the afternoon (2-4pm 3-5pm) est right? Should be fine with that
 
So, @FireBlaze and @Monsijo are you ok on playing once or twice per month, probably 18-20 GMT or 19-21 GMT during weekends?

For everyone: is it more comfortable to use this forum/thread or do you prefer to use Discord here: https://discord.gg/57RY7sjb ? Four of us are already in the discord channel but I have no preferences. Maybe the discord is more immediate when we play, but I'm ok with any proposal.
My opinion is I think it would be great to agree on a date/time here in this thread when we will all could "get together" on Discord and work out the details.
How to set up the game, the specifics, etc etc...
Since we are talking about joining up online every now and then to play simultaneously anyways I think it should be possible, no?
 
So is the plan to speak vocally to each other or just use chat? As far as I know, the game already has a chat function built-in.

In theory, it should also have a vocal chat, if I'm not mistaken. But I never used it and I don't know if it works. No problem for me in joining a voice channel while in game. As for determining game options, I think here or discord are both ok.
 
Ok, so in theory there are 8-9 players; so first question: scenario map (which one) or random map (which mapscript)? And maybe depending from that, which map size and which gamespeed? Here attached there's a list of all available options, but I would start with these settings (map and speed) before we talk about multiplayer options and game options. What do you all think about map and speed?
I would go with Totestra mapscript, probably Huge or Giant map since there's 8-9 of us. Given the map size I would go with Semi-Realistic (1.5x). Realistic would probably be too long but I think Fast-Paced (2x) is probably too fast for a map of this size. So I'll go with Semi-Realistic.

Edit: Uh, I misread a previous message by Sinocpm: you mean meeting on discord or somewhere else to discuss all the details of the options? It's ok with me but it might be more difficult to keep track of preferences. If we want to meet online for a chat, then the proposed time for the game would be ok for me, so tomorrow or sunday around 20-22 CET would be ok for me.
 

Attachments

  • RI-Options.JPG
    RI-Options.JPG
    306.4 KB · Views: 11
Last edited:
Top Bottom