For direct access use https://forums.oldunreal.com
It's been quite a while since oldunreal had an overhaul, but we are moving to another server which require some updates and changes. The biggest change is the migration of our old reliable YaBB forum to phpBB. This system expects you to login with your username and old password known from YaBB.
If you experience any problems there is also the usual "password forgotten" function. Don't forget to clear your browser cache!
If you have any further concerns feel free to contact me: Smirftsch@oldunreal.com

Custom Map Fixes

Unreal Unreal and more Unreal
User avatar
Shivaxi
OldUnreal Member
Posts: 2232
Joined: Wed Mar 08, 2006 4:43 pm

Custom Map Fixes

Post by Shivaxi »

I am currently working on a new server side mutator that will be fixing most, if not all of the custom map packs out there, for online play.  I'd like anyone who knows a map pack with a coop bug to tell me in this topic here, and I will fix it.  Tell me map pack, name of map, where and what needs to be fixed and why.

Maps currently fixed:

From The Tower of Shrakith'a:

Shrak1.unr:

- The door closing when you kill Nali (Fixed)
- The barn doors not opening when you kill Nali (Fixed) (Now activated by Player Bump)

From Attacked!

Attacked_3-1.unr:

- Door blocking the Titan room when a person goes in until Titan is killed (Fixed)

From Strange World:

Strange5.unr:

- Doors having to be opened from button behind wall (Fixed) (Now triggered by Player Bump.  This may not necessarily be needed, but people like myself have weapons being replaced in their server, so everyone may not have some homing missile weapons  :P)

From: The Episode Maps (Don't believe there was ever a title):

Episode3.unr:

- New PlayerStart spawns at beginning so people do not get stuck under elevator (This is only for the gametype xCoop so far, however I will be making compat for JCoopZ1, dCoop, and maybe others as well)

From Tentacle Hunter's Maps:

TheSwamp.unr:

- Door closing at end blocking end teleporter (Fixed)



All credit can not go to me however.  Special thanx to Dots for providing the base code.  Special thanx to Giygas for fixing the playerstart spawn code.

Last edited by Shivaxi on Mon Apr 27, 2009 8:30 pm, edited 1 time in total.
Image  Image
User avatar
[§Ŕ] ŤhěxĐâŕkśîđěŕ
OldUnreal Member
Posts: 4425
Joined: Wed Sep 03, 2008 8:19 am

Re: Custom Map Fixes

Post by [§Ŕ] ŤhěxĐâŕkśîđěŕ »

DasaCellars, at the place where there are lots of Kraal coming from the holes in the ceiling or the wall near the ceiling: there is a Behemoth behind a metal gate, and he blocks the gate if he comes near it. And if the gate doesn't open at the moment you kill the last Kraal you need to kill, the gate will remain blocked until an admin switches the map. The last Kraal should trigger the mover to be "On".
User avatar
Zombie
Administrator
Posts: 322
Joined: Thu May 09, 2002 11:44 pm

Re: Custom Map Fixes

Post by Zombie »

TheDarkSider, I'll point out that DasaCellars is not a custom map. Besides, there is an existing fix for that and just about all original coop map block problems in DZMapM. If DZMapM contains more than you need just disable every option but 'bPreventLevelBlocks'.

Shivaxi, you can get a list of custom maps to fix and short descriptions by checking the readme file in CMapFixM (Custom Map Fix Mutator). ;)
CMapFixMv0.1


-Zombie
Jâçkrâßßit

Re: Custom Map Fixes

Post by Jâçkrâßßit »

I made some mutator like this that fixed the Duke4Now map pack (which I think is freaking awesome and pretty underrated). If you want I can send you the source which fixes the entire pack online and offline *there were ALOT of bugs in this one*
User avatar
Leo T_C_K
OldUnreal Member
Posts: 3854
Joined: Sat Aug 27, 2005 6:24 pm

Re: Custom Map Fixes

Post by Leo T_C_K »

On UT servers, the custom map fixing mutators were rather normal...even I made one....
3's server uses hell a lot of fixes including the maps you mentioned shivaxi...
User avatar
Shivaxi
OldUnreal Member
Posts: 2232
Joined: Wed Mar 08, 2006 4:43 pm

Re: Custom Map Fixes

Post by Shivaxi »

TheDarkSider, I'll point out that DasaCellars is not a custom map. Besides, there is an existing fix for that and just about all original coop map block problems in DZMapM. If DZMapM contains more than you need just disable every option but 'bPreventLevelBlocks'.

Shivaxi, you can get a list of custom maps to fix and short descriptions by checking the readme file in CMapFixM (Custom Map Fix Mutator). ;)
CMapFixMv0.1


-Zombie

OMGWTFBBQPIE??!?! :o

When was somebody going to tell me this existed??

D*mn....everything I had (besides the Episode level) was already fixed....thanx Zombie ;D

This thread is useless now....ignore :P
Last edited by Shivaxi on Tue Apr 28, 2009 12:30 am, edited 1 time in total.
Image  Image
Jâçkrâßßit

Re: Custom Map Fixes

Post by Jâçkrâßßit »

yeah... but you can still use a mutator to do crazy stuff that doesn't normally happen in the map.... that can be a pretty WTF moment if done right..
User avatar
Shivaxi
OldUnreal Member
Posts: 2232
Joined: Wed Mar 08, 2006 4:43 pm

Re: Custom Map Fixes

Post by Shivaxi »

Oh, I did forget to mention: There is a serious bug in The Beta Maps converted by Dots that i guess he missed. It's in the map UB-Soledad. The part when you walk into the room, door closes behind you, and the Krall drop the spikey roof upon you...

That door doesn't re-open all the time for some odd reason, not sure what that is. It gets people stuck on my server all the time. So I'm changing the door to be TriggeredOnlyOnce as to not close again :P
Image  Image
User avatar
GreatEmerald
OldUnreal Member
Posts: 5347
Joined: Mon May 21, 2007 2:30 pm

Re: Custom Map Fixes

Post by GreatEmerald »

Yea, when I played the map, I had to ghost through the door to continue...

Anyway, how do you make fixes for all the different maps? Don't servers need to have them first? Won't they get a "class not found" error or something of the likes?
User avatar
[§Ŕ] ŤhěxĐâŕkśîđěŕ
OldUnreal Member
Posts: 4425
Joined: Wed Sep 03, 2008 8:19 am

Re: Custom Map Fixes

Post by [§Ŕ] ŤhěxĐâŕkśîđěŕ »

TheDarkSider, I'll point out that DasaCellars is not a custom map. Besides, there is an existing fix for that and just about all original coop map block problems in DZMapM. If DZMapM contains more than you need just disable every option but 'bPreventLevelBlocks'.
Oh, I'm so stupid...
User avatar
Zombie
Administrator
Posts: 322
Joined: Thu May 09, 2002 11:44 pm

Re: Custom Map Fixes

Post by Zombie »

Anyway, how do you make fixes for all the different maps? Don't servers need to have them first? Won't they get a "class not found" error or something of the likes?
Check for each map by Level.Title and/or filename (sometimes both necessary) to keep fixes specific. The fixes will have no dependancies to the maps if done correctly. Just be sure that no code directly references some custom class placed into a map. Most of the time that's easy because the problems are generally with existing Unreal class actors placed in maps (Mover, Trigger, Dispatcher, Teleporter) which only forms a dependancy to Unreal. If there is a custom class that needs to be accessed then one must use special means.


-Zombie
User avatar
Shivaxi
OldUnreal Member
Posts: 2232
Joined: Wed Mar 08, 2006 4:43 pm

Re: Custom Map Fixes

Post by Shivaxi »

The code I used originally by Dots in his BFix mutator looks like this:

Code: Select all

//=============================================================================
// CustomMapFixes.
//=============================================================================
class CustomMapFixes expands Mutator;

var vector NewVect;

function PostBeginPlay()
{
      SetTimer(0.1,False);
}
function Timer()
{
      local string S;
      local PlayerStart P;
      local xPlayerStart XP;
      local Mover M;

      S = GetURLMap();
      if( InStr(S,".")==-1 )
            S = S$".unr";
      if( S~="UB-Soledad.unr" )
      {
            M = Mover(DynamicLoadObject("UB-Soledad.Mover119",Class'Mover'));
            if( M!=None )
                  M.bTriggerOnceOnly = True;
                  M.GoToState('TriggerOpenTimed');
            M = Mover(DynamicLoadObject("UB-Soledad.Mover120",Class'Mover'));
            if( M!=None )
                  M.bTriggerOnceOnly = True;
                  M.GoToState('TriggerOpenTimed');
      }

      if( S~="episode3.unr" )
      {
            P = PlayerStart(DynamicLoadObject("episode3.PlayerStart1",Class'xPlayerStart'));
            if( P!=None )
                  P.bCoopStart = False;
                  P.bEnabled = False;
                  P.bSinglePlayerStart = False;

            NewVect.X=3834;
            NewVect.Y=2621;
            NewVect.Z=836;
            
            XP = Spawn(class'xCoop.xPlayerStart',,'',NewVect,rot(0,-16384,0));
      }
}
Image  Image
User avatar
Shivaxi
OldUnreal Member
Posts: 2232
Joined: Wed Mar 08, 2006 4:43 pm

Re: Custom Map Fixes

Post by Shivaxi »

I just found another bug actually while playing on my server. In UB-Foundry, there's a big lift, a little bit after you overload the pressure in the pipes. For some reason, the 2 levers that trigger the lift are set to bTriggerOnceOnly = True.

So if you die when you go up, everyone else on the bottom is screwed.

Fix:

Code: Select all

      if( S~="UB-Foundry.unr" )
      {
            M = Mover(DynamicLoadObject("UB-Foundry.Mover9",Class'Mover'));
            if( M!=None )
                  M.bTriggerOnceOnly = False;
            M = Mover(DynamicLoadObject("UB-Foundry.Mover21",Class'Mover'));
            if( M!=None )
                  M.bTriggerOnceOnly = False;
      }
Image  Image
User avatar
GreatEmerald
OldUnreal Member
Posts: 5347
Joined: Mon May 21, 2007 2:30 pm

Re: Custom Map Fixes

Post by GreatEmerald »

Hmm, interesting... So if I want to make an actor spawn only on a certain gametype, I can just check the game name, which is a string. Great, thanks!
User avatar
Bane
OldUnreal Member
Posts: 493
Joined: Sun Mar 03, 2002 6:32 pm

Re: Custom Map Fixes

Post by Bane »

Hmm, interesting... So if I want to make an actor spawn only on a certain gametype, I can just check the game name, which is a string. Great, thanks!
Only do that for custom game types. If you only want an actor to exist in deathmatch, check level.game to see if it is a deathmatchgame (if you want any type of deathmatch, including KoTH, Teamgame, and custom gametypes, do IsA. For vanilla only, compare level.game.class to class'deathmatchgame'). The only reason to use string comparison is to avoid dependencies on other packages. Checking strings usually isn't the best idea, partially because there is nothing stopping a custom gametype from using any string they want; for example, I believe every single variant of coop is called "Coop Game"
Author of Hide and Seek mod, and the NALIBALL mod

Hide and Seek can be downloaded from:
http://HideNSeek.5u.com
User avatar
Shivaxi
OldUnreal Member
Posts: 2232
Joined: Wed Mar 08, 2006 4:43 pm

Re: Custom Map Fixes

Post by Shivaxi »

I just noticed that the CMapFix mutator only fixes the single player version of Attacked...not the Coop version :-/

Where did the coop version come from anyway? because most ppl I know have never heard of the coop version...but its here on Oldunreal :P
Image  Image
User avatar
Leo T_C_K
OldUnreal Member
Posts: 3854
Joined: Sat Aug 27, 2005 6:24 pm

Re: Custom Map Fixes

Post by Leo T_C_K »

The coop version came from PHX clan.

Anyway these strings, the method .:..: uses is not my preferred one, I used a bit different method for my UT server...but the effect is same in the end..it doesn't have to be S something, it just can be simple "" string.
Last edited by Leo T_C_K on Fri May 01, 2009 2:16 am, edited 1 time in total.
User avatar
GreatEmerald
OldUnreal Member
Posts: 5347
Joined: Mon May 21, 2007 2:30 pm

Re: Custom Map Fixes

Post by GreatEmerald »

Only do that for custom game types. If you only want an actor to exist in deathmatch, check level.game to see if it is a deathmatchgame (if you want any type of deathmatch, including KoTH, Teamgame, and custom gametypes, do IsA. For vanilla only, compare level.game.class to class'deathmatchgame'). The only reason to use string comparison is to avoid dependencies on other packages. Checking strings usually isn't the best idea, partially because there is nothing stopping a custom gametype from using any string they want; for example, I believe every single variant of coop is called "Coop Game"
I'm planning to use it for third party gametypes, and in UT3 only, and you can't have two gametypes named the same there.
User avatar
.:..:
OldUnreal Member
Posts: 1637
Joined: Tue Aug 16, 2005 4:35 am

Re: Custom Map Fixes

Post by .:..: »

Anyway these strings, the method .:..: uses is not my preferred one, I used a bit different method for my UT server...but the effect is same in the end..it doesn't have to be S something, it just can be simple "" string.
Indeed, nowdays I prefer eighter:

Code: Select all

S = string(Outer.Name);
if( S~="Nyleve" )
...
Or then:

Code: Select all

switch( Outer.Name )
{
case 'NyLeve':
      do some changes here...
      break;
case 'Dig':
      etc...
      break;
}
1823223D2A33224B0 wrote:...and now im stuck trying to fix everything you broke for the next 227 release xD :P
(ಠ_ಠ)
User avatar
GreatEmerald
OldUnreal Member
Posts: 5347
Joined: Mon May 21, 2007 2:30 pm

Re: Custom Map Fixes

Post by GreatEmerald »

Hmm, interesting, but why Break? It would do the same without it too, right?
User avatar
Bane
OldUnreal Member
Posts: 493
Joined: Sun Mar 03, 2002 6:32 pm

Re: Custom Map Fixes

Post by Bane »

Hmm, interesting, but why Break? It would do the same without it too, right?
If you don't break out of each case, you will fall down to the next and execute those as well. So if the name was 'NyLeve', you would do NyLeve's stuff and then do Dig's stuff. That's usually not what you want.
Author of Hide and Seek mod, and the NALIBALL mod

Hide and Seek can be downloaded from:
http://HideNSeek.5u.com
User avatar
Leo T_C_K
OldUnreal Member
Posts: 3854
Joined: Sat Aug 27, 2005 6:24 pm

Re: Custom Map Fixes

Post by Leo T_C_K »

The case functions are rarely used, I used it only once or so and yes you ahve to use break after each of that, it is not classic function, well it is classic in uscript but not widely used.
User avatar
Gizzy
OldUnreal Member
Posts: 1468
Joined: Thu Jul 10, 2014 7:13 pm

Re: Custom Map Fixes

Post by Gizzy »

Slightly off-topic

You can also use case for weapons with multiple modes too :P

EDIT:

On Attacked_1-2 (First Proper Level), If you enable the Emergency Power System, then go into the cannon control room (B1 I believe) that kills you if you enable the turrets, both doors become locked (B1 and B2), stating that the EPS needs to be activated (When you did it already)

Can also be annoying if the server gives players a large amount of starting health because if they survive the blast, they are stuck.
Last edited by Gizzy on Sat May 02, 2009 2:04 pm, edited 1 time in total.
User avatar
Shivaxi
OldUnreal Member
Posts: 2232
Joined: Wed Mar 08, 2006 4:43 pm

Re: Custom Map Fixes

Post by Shivaxi »

Ok well I think I'm going to release my converted Attacked maps for 225...since both Attacked and Attacked Coop were made with the UGold editor and have Upak binded to them....it's really annoying.

What the hell should I call it though....since Attacked Coop is already taken....maybe just Attacked 225 :P
Last edited by Shivaxi on Sun May 03, 2009 6:30 pm, edited 1 time in total.
Image  Image
User avatar
Leo T_C_K
OldUnreal Member
Posts: 3854
Joined: Sat Aug 27, 2005 6:24 pm

Re: Custom Map Fixes

Post by Leo T_C_K »

Ok well I think I'm going to release my converted Attacked maps for 225...since both Attacked and Attacked Coop were made with the UGold editor and have Upak binded to them....it's really annoying.

What the hell should I call it though....since Attacked Coop is already taken....maybe just Attacked 225 :P
They don't use upak and you can simply use zora's map converter and it won't cause mismatches.
Post Reply

Return to “Unreal General Forum”