No announcement yet.

improving the build process (code/compile/run/test)

  • Filter
  • Time
  • Show
Clear All
new posts

    improving the build process (code/compile/run/test)

    I am coding with UDE and I have it setup so that when I click the 'run' icon it starts up UT2K4 with a small custom test map, in window mode, with the log already displaying, and no sound (i.e. -WINDOWED -LOG -NOSOUND -NOMUSIC ).

    But!! The level starts up and automatically spawns 1 bot, so here I am trying to test my code by summoning actors from the console meanwhile I'm getting my *** kicked by the bot. The only way I know to prevent this is quickly typing in in the console 'playersonly', which essentially freezes time. Is there a way to have this automatically happen each time or even just have the map startup with no bots? It's a pain in the but having to type 'playersonly' every darn time I test a fix in game, which happens frequently.

    Any other comments or personal tweaks for improving the flow of the build process are welcome and appreciated.

    After the map name



      Here are some keybinds I use in testing: (User.ini)


      I still use ConTEXT for editing and compiling. I then made a batch file to load an ONS Map. So I hit F9 to compile. Then F10 to run my .bat to load the map. I then click back on context and wait for it to load so it loads UT2004 windowed.

      I know this a noob setup, but what else can I be doing to help myself in testing? what's the log? Is there other relevant data I get myself? I mostly work with vehicles, if that's worth anything.


        Originally posted by Magnum76
        ...what else can I be doing to help myself in testing? what's the log? Is there other relevant data I get myself?
        Those switches I mentioned in my original post might help you out, if you have a batch file just append these (-WINDOWED -LOG -NOSOUND -NOMUSIC) to your UT2K4 executable line. The log can also be accessed via 'showlog' in the console. It can be useful for debugging. For instance I frequently call the function log( "some string" ); in my code to output a value.

        And thanks Hsoolien, that's exactly the line I was looking for.


          I use (sometimes) a program called "KetText", which is a keystroke macro program. It's not free, but I paid for it because it has a plethora of uses. I have it set up so Ctrl-Alt-M brings down the console and summons Blah.Blah and then closes the console, but one could use it for all kinds of things. I believe it also has a free trial period.


            hey thanks guys that stuff worked great. But now I see I am getting "accessed none" from my new beam effect for the tank I'm working on.:

            Warning: ONSPredBeamEffect ONS-Dawn.ONSPredBeamEffect (Function ONSPredatorBeta.ONSPredBeamEffect.SetupBeam:026A) Accessed None 'Emitters'
            Warning: ONSPredBeamEffect ONS-Dawn.ONSPredBeamEffect (Function ONSPredatorBeta.ONSPredBeamEffect.SetupBeam:0272) Attempt to assign variable through None

            how do I fix that? what does it mean?


              "Accessed None" means your code is trying to do something to or with an object that was either not created or not found. Say you have a variable of type Pawn... that's really just a shortcut to a real Pawn. To use it, you have to either spawn a Pawn and set the shortcut to point to that Pawn, or set the shortcut point to a Pawn that was spawned earlier. You do this like so: myActor = Spawn(class'SomeActorClass') or myActor = SomeSpawnedActor. Until you do either of those, trying to use myActor will result in an Accessed None error.

              Some other handy keybinds:

              set input k killbots (remove all bots for the rest of the match)
              set input pause freezeall (or maybe playersonly, if that enables you to use vehicles)
              set input f12 summon onslaught.onshoverbike (or summon whatever other vehicle you like)
              set input mouse5 slomo 0.1|onrelease slomo 1 (bullet time, very handy when you need to get some timing right)
              set input p exit (saves you going to the menu to quit every time)


                I don't bind any commands in game myself, i just like typing them out I guess...

                I also have a custom ONS, vCTF, CTF, and DM map set all are very basic (the CTf and DM are just cube maps, ONS and vCTF stripped Torlan map, loads in about 1/10 the time)

                I used the windows run command to run ut with custom user and ut2004 ini files so that any testing I do for coding does not change any of my normal game settings... (like running details higher on testing since my **** computer has to have detail reduced to play well online). I also use a custom ut2004.ini for UCC compiling so messing with the editpackages does not **** with UED...

                So basically most of the time as I work on one things its windowsbutton-r, then enter and boom I'm in game with all mysettings as I need then to test what I'm doing.


                  Originally posted by Hsoolien
                  I don't bind any commands in game myself, i just like typing them out I guess...
                  I wouldn't mind typing them out if there was some form of tab completion in place. Coming from a Linux background I live for shortcuts and speedups that can be had by doing a little investigating.


                    Killbots will fix all of your problems.


                      freezeall (try it, its fun with bots!)

                      showdebug (awesome if you're good with canvas drawing, but its not really a "quick" feature to utilize)