Custom Maps (The cool way)

Page 1 of 2 12 LastLast
Results 1 to 15 of 19
  1. #1
    Daemonsring Developer Gunblade is offline
    MemberRank
    Jul 2007 Join Date
    On the moonLocation
    728Posts

    Custom Maps (The cool way)

    Removed
    Last edited by Gunblade; 14-06-13 at 10:13 PM.


  2. #2
    Valued Member warrenscoots is offline
    MemberRank
    Jun 2009 Join Date
    125Posts

    Re: Custom Maps (The cool way)

    Nice release thank you :).

  3. #3
    Account Upgraded | Title Enabled! KeyTrix is offline
    MemberRank
    Feb 2012 Join Date
    EverywhereLocation
    268Posts

    Re: Custom Maps (The cool way)

    Good job, but I don't support it that much I would prefer peoples take the hard way, better for educational purposes

    they can improve their knowledge.

  4. #4
    Account Upgraded | Title Enabled! metalgunz is offline
    MemberRank
    May 2011 Join Date
    390Posts

    Re: Custom Maps (The cool way)

    So we can just drag and drop map files into the map folder?! Chu' iz awsum!!!! =w=!

  5. #5
    Retired. Don't PM. SecretsOThePast is offline
    DeveloperRank
    Jan 2009 Join Date
    643Posts

    Re: Custom Maps (The cool way)

    Heh surprised no one did this yet. I did it for DarkGunz not too long ago.

    Still have to fix mine to allow items spawns to appear properly in maps, and to allow for exp gains past the first kill.

    Also, make sure you adjust the spawns to spawn you after death if you plan on using this.

  6. #6
    Good Guy George qet123 is offline
    MemberRank
    Apr 2009 Join Date
    DesertLocation
    1,432Posts

    Re: Custom Maps (The cool way)

    Fuck yea, no need to do all that shit in XML :)
    Good guy blade, releasing usefull stuff on rz. Ty man

  7. #7
    Fuck Army. sahar042 is offline
    MemberRank
    Jul 2009 Join Date
    833Posts

    Re: Custom Maps (The cool way)

    "Warning: This will remove relaymap!" read the warning before you replacing it in the source.
    Anyway GJ.

  8. #8
    Daemonsring Developer Gunblade is offline
    MemberRank
    Jul 2007 Join Date
    On the moonLocation
    728Posts

    Re: Custom Maps (The cool way)

    Quote Originally Posted by KeyTrix View Post
    Good job, but I don't support it that much I would prefer peoples take the hard way, better for educational purposes

    they can improve their knowledge.
    You shouldn't expect that of people from ragezone.

  9. #9
    Praise the Sun! Solaire is offline
    MemberRank
    Dec 2007 Join Date
    Undead BurgLocation
    2,862Posts

    Re: Custom Maps (The cool way)

    Quote Originally Posted by SecretsOThePast View Post
    Heh surprised no one did this yet. I did it for DarkGunz not too long ago.

    Still have to fix mine to allow items spawns to appear properly in maps, and to allow for exp gains past the first kill.

    Also, make sure you adjust the spawns to spawn you after death if you plan on using this.
    Because I did shit back when it was cool (this is '07 MatchServer, should work on 1.5 with small modifications).

    PHP Code:
    void GoatServer::loadMaps() {
        
    int nMaps 0;

        
    WIN32_FIND_DATAA pFindFileData;
        
    HANDLE hFindHandle FindFirstFileA("Maps/*.*", &pFindFileData);

        if (
    hFindHandle == INVALID_HANDLE_VALUE) {
            
    Logging::getInstance()->writeLog("Failed to load maps!");
            return;
        }

        do {
            if (!
    strstr(pFindFileData.cFileName".")) {
                
    nMaps++;
            }
        }
        while (
    FindNextFileA(hFindHandle, &pFindFileData));

        
    FindClose(hFindHandle);

        
    m_pMapDesc = new MMatchMapDesc[nMaps];
        
    m_pMMatchMapsWorldItemSpawnInfo malloc(+ (5608 nMaps));
        
    hFindHandle FindFirstFileA("Maps/*.*", &pFindFileData);

        if (
    hFindHandle == INVALID_HANDLE_VALUE) {
            
    Logging::getInstance()->writeLog("Failed to load maps!");
            return;
        }

        
    int nDummy 0;
        
    int nMansion 0;

        do {
            if (!
    strstr(pFindFileData.cFileName".")) {
                if (
    nDummy >= nMaps) {
                    break;
                }
                
                if (
    strcmp(pFindFileData.cFileName"Mansion") == 0) {
                    
    nMansion nDummy;
                }

                
    memset(&m_pMapDesc[nDummy], 0sizeof(MMatchMapDesc));

                
    m_pMapDesc[nDummy].m_nMapID nDummy;
                
    strcpy_s(m_pMapDesc[nDummy].m_szMapnamesizeof(m_pMapDesc[nDummy].m_szMapname), pFindFileData.cFileName);
                
    m_pMapDesc[nDummy].m_fpExpRatio 1;
                
    m_pMapDesc[nDummy++].m_nMaxPlayers 24;
            }
        }
        while (
    FindNextFileA(hFindHandle, &pFindFileData));

        
    DWORD dwOffset PtrToUlong(&m_pMapDesc[0]);
        
        
    FindClose(hFindHandle);
        
    Logging::getInstance()->writeLog("Maps loaded at memory offset: %X, mansion is at index %i. Amount: %i."dwOffsetnMansionnMaps);

        
    DWORD dwDummy;
        
    dwOffset += 4;

        
    /* Patch MMatchStageSetting::MMatchStageSetting */
        
    VirtualProtect((void *)0x005049981PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x00504998, &nMansion1);
        
    VirtualProtect((void *)0x005049981dwDummy, &dwDummy);

        
    /* Patch MMatchMapsWorldItemSpawnInfo::GetInstance */
        
    unsigned char uchBuffer[6];
        
    uchBuffer[0] = 0xB8//MOV EAX
        
    DWORD dwInstanceAddr PtrToUlong(m_pMMatchMapsWorldItemSpawnInfo);

        
    memcpy((uchBuffer 1), &dwInstanceAddrsizeof(DWORD));
        
    uchBuffer[5] = 0xC3//RETN

        
    VirtualProtect((void *)0x0043D9C0sizeof(uchBuffer), PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x0043D9C0, &uchBuffersizeof(uchBuffer));
        
    VirtualProtect((void *)0x0043D9C0sizeof(uchBuffer), dwDummy, &dwDummy);

        
    /* Patch MMatchMapsWorldItemSpawnInfo::Read */
        
    VirtualProtect((void *)0x0043EA1A4PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x0043EA1A, &dwOffset4);
        
    VirtualProtect((void *)0x0043EA1A4dwDummy, &dwDummy);

        
    VirtualProtect((void *)0x0043EA5D4PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x0043EA5D, &nMaps4);
        
    VirtualProtect((void *)0x0043EA5D4dwDummy, &dwDummy);

        
    /* Patch MMatchServer::OnStageSetting */
        
    VirtualProtect((void *)0x0045C1434PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x0045C143, &dwOffset4);
        
    VirtualProtect((void *)0x0045C1434dwDummy, &dwDummy);

        
    /* Patch MMatchStageSetting::SetMapName */
        
    VirtualProtect((void *)0x004664924PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x00466492, &dwOffset4);
        
    VirtualProtect((void *)0x004664924dwDummy, &dwDummy);

        
    VirtualProtect((void *)0x004664AA4PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x004664AA, &nMaps4);
        
    VirtualProtect((void *)0x004664AA4dwDummy, &dwDummy);

        
    /* Patch MMatchStageSetting::SetMapIndex */
        
    VirtualProtect((void *)0x004664FD1PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x004664FD, &nMaps1);
        
    VirtualProtect((void *)0x004664FD1dwDummy, &dwDummy);

        
    VirtualProtect((void *)0x004665054PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x00466505, &dwOffset4);
        
    VirtualProtect((void *)0x004665054dwDummy, &dwDummy);

        
    /* Patch MMatchServer::CalcExpOnGameKill */
        
    VirtualProtect((void *)0x0045922C1PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x0045922C, &nMaps1);
        
    VirtualProtect((void *)0x0045922C1dwDummy, &dwDummy);

        
    DWORD dwTemp = (dwOffset 96);

        
    VirtualProtect((void *)0x004592384PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x00459238, &dwTemp4);
        
    VirtualProtect((void *)0x004592384dwDummy, &dwDummy);

        
    /* Patch MMatchWorldItemManager::OnStageBegin */
        
    VirtualProtect((void *)0x00480A401PAGE_EXECUTE_READWRITE, &dwDummy);
        
    memcpy((void *)0x00480A40, &nMaps1);
        
    VirtualProtect((void *)0x00480A401dwDummy, &dwDummy);


  10. #10
    Account Upgraded | Title Enabled! metalgunz is offline
    MemberRank
    May 2011 Join Date
    390Posts

    Re: Custom Maps (The cool way)

    Quote Originally Posted by KeyTrix View Post
    Good job, but I don't support it that much I would prefer peoples take the hard way, better for educational purposes

    they can improve their knowledge.
    Quote Originally Posted by Gunblade View Post
    You shouldn't expect that of people from ragezone.
    Heeeeeeey.... speak for yourself x'D I for one LOVE to improve my GunZ development knowledge ^^ you know its funny. When I first began to start learning to develop for GunZ I actually thought you could just drag and drop maps, items and weapons into their folders and they would appear in game x3 so I went on a downloading spree and downloaded as much maps and weapons as I could from as many sources as possible (over 150+ MAPS) and gave it to the owner of this server I was developing for to put it in game X'D although he was as clueless as me so he didn't mind.

  11. #11
    Member DoomReaper is offline
    MemberRank
    Nov 2012 Join Date
    78Posts

    Re: Custom Maps (The cool way)

    Awesome release.

  12. #12
    Hi, I'm Omar! Vusion is offline
    MemberRank
    Jan 2011 Join Date
    HereLocation
    1,658Posts

    Re: Custom Maps (The cool way)

    Quote Originally Posted by KeyTrix View Post
    Good job, but I don't support it that much I would prefer peoples take the hard way, better for educational purposes

    they can improve their knowledge.
    Knowledge about what? Gunz is no knowledge.

  13. #13
    Account Upgraded | Title Enabled! metalgunz is offline
    MemberRank
    May 2011 Join Date
    390Posts

    Re: Custom Maps (The cool way)

    Quote Originally Posted by Vusion View Post
    Knowledge about what? Gunz is no knowledge.
    Are you implying it takes no brains what so ever to develop for GunZ? X'D just wondering.

  14. #14
    Proficient Member wayutok is offline
    MemberRank
    Oct 2011 Join Date
    198Posts

    Re: Custom Maps (The cool way)

    after this build only gunz?or gunz and matchserver?

  15. #15
    Praise the Sun! Solaire is offline
    MemberRank
    Dec 2007 Join Date
    Undead BurgLocation
    2,862Posts

    Re: Custom Maps (The cool way)

    Quote Originally Posted by metalgunz View Post


    Are you implying it takes no brains what so ever to develop for GunZ? X'D just wondering.
    Just look around in the GunZ Releases and Gunz Tutorials forums these days and you'll jump to the same conclusion eventually.



Page 1 of 2 12 LastLast

Advertisement