This site hosted by Free.ProHosting.com
Google
DIARY
HOME & NEWS
ABOUT
DIARY
DOWNLOADS
SCREENSHOTS
WEBLINKS


This is my diary about my X Configs project.
While I'm learning UnrealScript and programming the mutator, I will report my progress.
If you want to learn UnrealScript with me, follow my diary.


Initial Requirements: OS> Windows XP // Game> Unreal Tournament 2004 //
// Programming Tool> WOTgreal // Basics of Object-Oriented Programming


PAGE:    1   2   3   

 Sunday, 15 May 2005

- Tutorials:
Unreal Engine Core
Object Oriented Programming Overview
Using Objects

- Learned:
Some syntax of UnrealScript.


 Monday, 16 May 2005

- Tutorials:
Using Objects
Unreal Object Oriented Programming
Setting Up UnrealScript
UnrealScript Source
UnrealScript Hello World

- Summary > These are the followed steps:

1. Create two folders:
C:\UT2004\MutHelloWorld
C:\UT2004\MutHelloWorld\Classes

2. Open WOTgreal, type the following lines:

class HelloWorld extends Mutator;

function PostBeginPlay()
{
Super.PostBeginPlay();
Log("Hello World");
}

defaultproperties
{
FriendlyName="Hello World Mutator"
Description="Log 'Hello World'."
}

and save this file calling it HelloWorld within the C:\UT2004\MutHelloWorld\Classes directory.

3. Create .u and .ucl files: CTRL+F9 or in the toolbar UT2004 > Compile Scripts.

4. In the toolbar UT2004 > Edit UT2004.ini File and insert EditPackages=MutHelloWorld under the [Editor.EditorEngine] section, save and close files and WOTgreal.

5. Create .int file: In system symbol (MS-DOS), go to C:\UT2004\System (type cd.. <ENTER> cd.. <ENTER> cd ut2004/system <ENTER>) and enter the following command:
ucc dumpint MutHelloWorld.u

6. Play a game selecting our mutator from the mutator list and close the game.

7. Open UT2004.log with Notepad and see:
ScriptLog: Mutators MutHelloWorld.HelloWorld
ScriptLog: Hello World

- Learned:
MutHelloWorld.HelloWorld
class HelloWorld extends Mutator;
function PostBeginPlay()
Super.PostBeginPlay();
Log("Hello World");
defaultproperties
FriendlyName="Hello World Mutator"
Description="Log 'Hello World'."
==> The class HelloWorld in package MutHelloWorld.
==> Our class inherits from class Mutator because it's a mutator.
==> It is called exactly when we enter in a game level.
==> Runs the super class function PostBeginPlay (a kind of initialization).
==> Write our desired log message.
==> Tells the game what to display in the mutator list.
==> Title of our mutator that shows in the mutator list.
==> This is the description of the mutator.

 Wednesday, 25 May 2005

- Tutorials:
MutTutorial

- Summary > These are the followed steps:

1. Create two folders:
C:\UT2004\MutNeedBetterName
C:\UT2004\MutNeedBetterName\Classes

2. Open WOTgreal, type the following lines:

class MutNeedBetterName extends Mutator;

var int MultiJumpCount, MultiJumpBoost, StartingHealth, MaximumHealth, SuperDuberMaximumHealth;

function ModifyPlayer(Pawn Other)
{
local xPawn x;
x = xPawn(Other);
if (x != None) {
 x.MaxMultiJump = MultiJumpCount;
 x.MultiJumpBoost = MultiJumpBoost;
 x.Health = StartingHealth;
 x.HealthMax = MaximumHealth;
 x.SuperHealthMax = SuperDuberMaximumHealth;
 }
}

defaultproperties
{
MultiJumpCount=10
MultiJumpBoost=50
StartingHealth=250
MaximumHealth=250
SuperDuberMaximumHealth=500
GroupName="MutNeedBetterName"
FriendlyName="What ever you want the Mutator to be called"
Description="Changes your initial health and Multi-Jumping ability"
}

and save this file calling it MutNeedBetterName within the C:\UT2004\MutHelloWorld\Classes directory.

3. Create .u and .ucl files: CTRL+F9 or in the toolbar UT2004 > Compile Scripts.

4. In the toolbar UT2004 > Edit UT2004.ini File and insert EditPackages=MutNeedBetterName under the [Editor.EditorEngine] section, save and close files and WOTgreal.

5. Create .int file: In system symbol (MS-DOS), go to C:\UT2004\System and enter the following command:
ucc dumpint MutNeedBetterName.u

6. Play a game selecting our mutator from the mutator list and enjoy! Test the crazy multi-jump.

See some screenshots here.

- Learned:
Some attributes of the players (pawns Other and x).


 Wednesday, 1 June 2005

- Tutorials:
MutTutorial Code With GUI
Mutator Config GUI

- Summary > Do the same as the previous mutators (create folders, type the code, generate .u and .int files, edit UT2004.ini), use the code from MutTutorial Code With GUI and test the mutator (I named it X Configs).

See screenshot here.

Later, see the Mutator Config GUI tutorial and try to understand the usefulness of each paragraph.
Now start UnrealEd and click on the Actor Class Browser (a chess piece button). Then right-click on Pawn in the class tree and select Edit Script. Take a look to the attributes (the "var" lines), you will find interesting things. Do the same for the xPawn class (it's in the sub-class tree of Pawn).

- Learned:
Health
HealthMax
SuperHealthMax
MaxMultiJump
MultiJumpBoost
==> Pawn's attribute, starting health.
==> Pawn's attribute, max health that you can gain.
==> Pawn's attribute, max health that you can reach with a Keg O' Health.
==> Pawn's attribute, max jumps in a multi-jump.
==> Pawn's attribute, amount of boost of each jump in a multi-jump.

- Definitions:
Pawn, the base class of all actors that can be controlled by players or AI.
Pawns are the physical representations of players and creatures in a level. Pawns have a mesh, collision, and physics. Pawns can take damage, make sounds, and hold weapons and other inventory. In short, they are responsible for all physical interaction between the player or AI and the world.
Actor is the base class of all gameplay objects.
A large number of properties, behaviors and interfaces are implemented in Actor, including:
- Display
- Animation
- Physics and world interaction
- Making sounds
- Networking properties
- Actor creation and destruction
- Triggering and timers
- Actor iterator functions
- Message broadcasting


 Wednesday, 22 June 2005

- Tutorials:
Regen Mutator
MutRegen Source Code
Modify Mutator
Controller Overview

- Summary > Edit the previous mutator we coded (I named it X Configs) and modify it putting the regeneration and the adrenaline decrease in their right place. Make the new variables as configuration variables. Test it.

- Learned:
What's a controller and how to manipulate the health and the adrenaline of pawns.

- Definitions:
Controller, the base class of players or AI.
Controllers are non-physical actors that can be attached to a pawn to control its actions. PlayerControllers are used by human players to control pawns, while AIControllers implement the artificial intelligence for the pawns they control. Controllers take control of a pawn using their Possess() method, and relinquish control of the pawn by calling UnPossess().
Controllers receive notifications for many of the events occuring for the Pawn they are controlling. This gives the controller the opportunity to implement the behavior in response to this event, intercepting the event and superceding the Pawn's default behavior.

NEXT PAGE