Page 1 of 2 12 LastLast
Results 1 to 40 of 51
  1. #1
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default UDK Frontend v1.0.6.5

    UDK Frontend

    The only goal of this version of the Frontend was to expose the Configuration options, and allow for Extra Cooking options when required. Another reason why I made this was that UDK August Build removed the draggable slider between the Log window and the Game/Cooking Panels, which was really annoying. Other than this, no new features are present. I just didn't want to wait for Epic Games to fix the slider, so I did it myself.

    This Frontend also helped me avoid creating a whole new set of shortcuts all over again for Final_Release mode, and strip source for Final_Release modes for new UDK Builds.

    Screenshot (v1.0.6.5):
    This Image Was Automatically Resized by using the Screenshot Tag.  Click to view the full version

    When UFE is first started up, you will be asked to choose the initial Location of the UDK.exe file. Please select it from Binaries\Win32 or Win64 folder only.

    All the functionality of the original Unreal Frontend has been retained. The extras that have been added\updated are:

    1. File -> Change UDK Directory
    This allows you to use the same Frontend application for multiple UDK Builds. No more need to switch between Frontends to cook or compile your stuff when a new UDK Build is released.

    2. Edit -> Auto Scroll
    The original frontend would stop auto-scrolling when you click somewhere in-between the Log window while an action is being performed. Now you can choose to always scroll the window whenever a new line is written to the Log window, even if you lose focus from the Log window. Note: If you have focus (clicked) in the Log window, it will auto scroll regardless of the AutoScroll status.

    3. Server -> Add Clients
    Compared to Unreal Frontend, this command will now 'instantly' add only the number of clients that have been specified in the 'Number of Clients' box in the Game Tab

    4. Strip Source Commandlet
    Useful if you want to remove source code from your custom packages. Clicking this button opens a new window that will allow you to choose which packages you want to perform strip source on. All Custom Packages should be written with their extensions and should be comma separated (e.g. MyPackage.u, MySecondPackage.u)

    5. Ability to Stop Packaging the Game
    Now you can stop packaging your game if you feel you made a mistake. No need to go to Task Manager every time.

    6. Configuration Bar
    This allows you to modify the Configuration of your Launch, Cooking and Compiling processes. Both 32 and 64 bit configuration options have been added, but only 32 bit has been tested by me.

    The Final_Release Configuration is especially useful when you are just about to release your game, as it disables all expensive log messages. Please remember that you should have Final_Release set for both the Script configuration and the Cooking configuration for the packaged game to be in Final Release mode.

    7. Platform Chooser
    Allows you to select the platform on which to Cook/Compile your game. Obviously only PC Platform makes sense currently since the UDK binary is for PC only. This option will become useful later on when UDK comes to iPhone.

    8. Supported Resolutions shown only
    Resolutions that are supported by your current display device will be shown only. However, if you want to see the old list, you can check the 'Show All Resolutions' box.

    9. FullScreen Mode
    Starting UDK in Fullscreen is directly possible through Frontend. (Although Alt+Enter was there earlier too)

    10. Additional Cooker Options
    Now you can add any number of extra flags to your Cook Packages commandlet without having to make Batch scripts or shortcuts for each new UDK Build

    11. GFxImport Commandlet
    Allows you to enter a list of all SWF Movies that will be imported or updated. The list can have space, new line or comma separated list of SWF Movies and all of them will be checked for updates. This setting is relevant only for UDK August 2010 build onwards.

    Since the List is saved between sessions, you can quickly update your SWF files without having to manually write scripts to do the same thing. You can place all your SWF files in one go into the list box and import every time a change is made, as Swf's that are up-to date will not be modified.

    12. Custom Commandlet
    You can run UDK.exe with any commandlet that appears with later versions by typing the arguments in the Custom Commandlet window. All commandlets are saved to history, and it is possible to clear history as well.

    13. Package Game -> Custom Packaging
    To use this option, you must have a valid Manifest File. The file is to be selected at first run, and can be changed later on. After selection, you have 2 options:
    • Collect Game: Allows you to select a Folder where all relevant UDK Files will be copied. NOTE: When copying to the same location twice, Read-Only Files will NOT be overwritten
    • Package Game: Creates a NSIS Script with a listing of all relevant UDK Files. The script also contains extra code to create UnSetup.exe Registry keys during the main installation itself. This will allow your users to run the Game directly (without the extra EULA screen & without Admin Access). Pre-Requisites are installed as well (not in silent mode yet). The generated script will be written to the same directory in which UDKFrontend is present. You may use NSIS v2.46 or above to compile the script directly.

    The Manifest File can have an Include and an Exclude Group. The XML Tags can have any name as long as they contain the words 'Include' or 'Exclude'. Files and Directories in the Include Group have a higher priority than Excludes, so if you need to place specific files like Custom Launchers or UDK(.*).ini files, then write them here, so that they're automatically included during collection & in the NSIS Script.

    For updated UDK Builds, you need to do the following to create a new Manifest File using "Binaries\UnSetup.Manifests.xml" as a starting point:
    • Find and Delete all occurrences of the '^' character.
    • Add the 'ExtraExcludes' Group present inside the 'UDKManifest.xml' file, to the UnSetup XML File.
    • In the 'GameFilesToInclude' section, replace "UDKGame/^Default(.*).ini" with "UDKGame/Config/Default(.*).ini"

    14. Multiple Language Cooking
    By typing in multiple language codes in the Languages to be Cooked box, you can execute the CookPackages commandlet multiple times with the same initial settings. The language codes can be separated by space, comma or new line characters.

    NOTE: If you want to Package your Game using the Default Installer, you should run UDK Frontend as Administrator before starting it, otherwise you'll have to face 4 UAC prompts on clicking the 'Package Game' button. The only reason I left it this way was that Package Game is not a commonly used option (only at end of long development periods), and that doesn't justify the whole program requiring admin access at all times.

    You can place the Frontend executable in any directory and it will run.

    Changelog:
    Last edited by research; 09-15-2010 at 05:41 AM. Reason: Updated to v1.0.6.5

  2. #2
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Updated to v1.0.0.1:

    Fixed a small bug in Form window resizing that would leave a permanent blank space in the Tab control page.

    If you faced this error already, then you can delete your user settings config file (stored in 'AppData\Local\UDKFrontend\') to restore the default settings.

  3. #3
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Updated to v1.0.2.0

    Changes mentioned in the 1st post

  4. #4

    Default

    hi,maybe i get source for my UE3 engine(not UDK and not public version)?
    Last edited by Nik Gastovski; 08-30-2010 at 01:09 AM.

  5. #5
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Updated UDKFrontend to v1.0.3.0, adding a custom commandlet option to avoid creating buttons for every commandlet in UE3

    Quote Originally Posted by Nik Gastovski View Post
    hi,maybe i get source for my UE3 engine(not UDK and not public version)?
    Does that have anything to do with this thread's topic?

  6. #6
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    434

    Default

    kindof, he askes for the source of your frontend, so he can integrate it within UE3 (source license)

  7. #7
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Oh.. I accidentally read it as 'can I get the UE3 source'

    If you are a UE3 licensee, then you would also have the UnrealFrontend source. Ideally you should use that only, since my version hasn't implemented any of the Console related stuff (Targets tab, Sync Consoles), and neither does it load any console specific DLL's like the licensee version of Unreal Frontend.

    You can easily make the modifications that I made, since they're all very basic modifications.

  8. #8
    MSgt. Shooter Person

    Join Date
    Aug 2006
    Posts
    449

    Default

    That is cool! Any possibility of extending the cooking language panel? That has been a big problem in the official frontend for a long time. If your game uses non standard languages or abbreviations it is impossible to cook it through the frontend which is really annoying.

    Another thing that would be very handy would be a feature to "collect" your game. You don't want to package your game if you use your own installer. Packaging your game takes ages, and then you'd have to install it too which takes ages more. Furthermore if you modify too many files or even remove files from the UDK, the build in packager may even refuse to run at all.... The only reason why we used to run the packager was because we quickly and easily wanted to filter out all the files required for the end user, get those into a seperate directory, and then we could wrap our custom installer around those files. So a feature that simply collects all relevant files and copies them to an output directory would be most useful.
    Tutorials/Textures/Jobs/Kismet Snippets - http://www.Hourences.com
    The Ball - An Action/Puzzle Game http://www.theballthegame.com/

  9. #9
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Thanks a lot for the feedback!

    I've allowed the Cooking panel to have any code typed in by the user. Collect Game option has been added, and I've also allowed automatic creation of a NSIS Script.

    Script's Key Advantage:
    If you directly run a game installed with a custom installer, the user needs Admin Access to run the game for the first time. Moreover, an Uninstall entry gets created with the name 'My Game Long Name'.
    The Generated NSIS Script however, puts the necessary Registry keys used by UnSetup during installation itself, to prevent the above issues. Instead of 'My Game Long Name', the Product name is used, with a suffix of 'Dont Touch'.

  10. #10
    MSgt. Shooter Person

    Join Date
    Aug 2006
    Posts
    449

    Default

    Cool!
    I saw that you had the custom cooking command thingy, but as far as I know (I actually never tried it though) you cannot enter multiple languages at the same time, can you? The problem we have at the moment is that we have 9 languages, and each of those is another command. To get all languages cooked I need to run every bat file one by one, wait until each one is finished, run the next one, etc.
    Tutorials/Textures/Jobs/Kismet Snippets - http://www.Hourences.com
    The Ball - An Action/Puzzle Game http://www.theballthegame.com/

  11. #11

    Default

    >also have the UnrealFrontend source
    No-no,my version old and not included frontend

    Old(24.01.10) screens link

  12. #12
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Updated to v1.0.6.1, to allow multiple languages to be cooked one after the other.

    @Nik: Does that mean the old UE3 didn't have a Frontend at all? Do you do everything with command line?
    What arguments do you use? If they're the same (e.g. make, cookpackages etc), you can use the current version by just changing the exe to your engine's binary file.

  13. #13
    God King
    Join Date
    Aug 2008
    Location
    Location,Location
    Posts
    4,072

    Default

    Im wondering will this matter if you use this version of the front end that you're providing with any version of UDK? So i can use this version of your front end with August, and when September is released its the same deal?

  14. #14
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    You can use it for new versions of UDK, assuming they don't change the syntax of any commandlet. Old versions can also be used (if the commandlet exists for that version).

    For future builds, the only thing that you 'may' need to change is the custom Manifest file for packaging (only required if you see any changes in the 'Binaries\UnSetup.Manifests.xml' file for that build)

  15. #15

  16. #16
    MSgt. Shooter Person

    Join Date
    Aug 2006
    Posts
    449

    Default

    I am trying to run a cook with Additional Cooker Options but it doesn't seem to work. I tried with a -, without, etc. It ignores it.
    Tutorials/Textures/Jobs/Kismet Snippets - http://www.Hourences.com
    The Ball - An Action/Puzzle Game http://www.theballthegame.com/

  17. #17
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Thanks for telling. Apparently, I forgot to use it while creating the cooking string. It's been fixed (version is the same - v1.0.6.1)

  18. #18
    MSgt. Shooter Person

    Join Date
    Aug 2006
    Posts
    449

    Default

    By the way, it may be nice to add Installed as a flag to the Game tab, you can add it to Extra Options manually, but it is such an important flag that it should maybe be an option, especially since few people also are aware of the flag.

    "-installed"

    If you are interested in doing another one of these kind of programs, I think an array tool for the editor would be really handy, and probably very possible. From there on it is probably also possible to do a whole lot of other things...
    Tutorials/Textures/Jobs/Kismet Snippets - http://www.Hourences.com
    The Ball - An Action/Puzzle Game http://www.theballthegame.com/

  19. #19
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Thanks. I'll add that to the next release.

    Could you elaborate about the array tool? I might try to do it in my free time.

  20. #20
    MSgt. Shooter Person

    Join Date
    Aug 2006
    Posts
    449

    Default

    If you copy paste something in UnrealEd, you can paste it into notepad and it will be converted into T3D, Unreal text. It will be readable, and you can easily make adjustments in notepad, like changing the location of the actor, and then copy paste it back into UnrealEd. I think this possibility can be exploited and allow for new tools to be created. One big thing lacking in the editor is an array tool. If you got 20 lamps and you want to place them all into a straight corridor you got to place all 20 manually, and manually measure the distance between each. Let alone if you want to place them in a circle. That is near impossible to do without first placing a temp cylinder mesh so you got a guideline as to where exactly to place them... So I was thinking, if you would be able to copy paste an actor into an external program, and if that external program would then be able to duplicate what you pasted X times, and adjust the rotation and location values from each instance, and then give you a text back you can paste into the editor, you would basically have a full blown array tool.

    From there on there is probably a lot more you can do by modifying things in text, and then pasting it back.
    Tutorials/Textures/Jobs/Kismet Snippets - http://www.Hourences.com
    The Ball - An Action/Puzzle Game http://www.theballthegame.com/

  21. #21
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Updated to v1.0.6.3 with a few bug fixes.

    The array tool sounds interesting. I'll try to do it soon.

  22. #22

    Default

    Does this frontend uptade has anything to do with the nvidia 3dVision?
    I'm anxiously waiting for the fix!

  23. #23

    Default

    @Nik: Does that mean the old UE3 didn't have a Frontend at all? Do you do everything with command line?
    What arguments do you use? If they're the same (e.g. make, cookpackages etc), you can use the current version by just changing the exe to your engine's binary file.
    Make
    Cook-work only with Xbox

    Use this is version-not cool
    Result:


    We need full integration(interface)-i have my frontend,but he is console and work only with "make"

  24. #24
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    @Carlos: No, this doesn't have anything to do with 3D Vision.

    @Nik: That window comes only when your pipe has a different name from the one I'm listening to.
    When creating a named pipe in your engine use pipe-name as "\\\\.\\pipe\\[ProcessID]cout", then inline log will work (buffer size is 1024 & don't put square brackets for Process ID)

  25. #25
    MSgt. Shooter Person
    Join Date
    Sep 2010
    Location
    Lisbon, Portugal
    Posts
    156

    Default

    UDKFrontend (v1.0.6.3.7) crashed yesterday, an now it doesn't run at all. Immediately after I open the program a windows error pops-up saying "UDKFrontend has stopped working". And below, in problem details, among other things, it says: "Problem Signature 09: System.DivideByZeroException"

    Last edited by rvc; 09-14-2010 at 05:49 AM. Reason: better just take a screenshot

  26. #26
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Can you tell what all did you do the last time you opened it? Also, can you show your user.config file (found in 'AppData\Local\UDKFrontend\[random name]\[version]\user.config').

    As a temporary fix, you can delete the folder 'AppData\Local\UDKFrontend'. This should reset all settings to their defaults, and it should work after that.

  27. #27
    MSgt. Shooter Person
    Join Date
    Sep 2010
    Location
    Lisbon, Portugal
    Posts
    156

    Default

    Sorry but I really can't remember what I did to make this happen :\

    Here is the config:
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
        <configSections>
            <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
                <section name="UDKFrontend.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
            </sectionGroup>
        </configSections>
        <userSettings>
            <UDKFrontend.Properties.Settings>
                <setting name="NumClients" serializeAs="String">
                    <value>0</value>
                </setting>
                <setting name="PathToUDK" serializeAs="String">
                    <value>C:\UDK\UDK-2010-08\Binaries\Win64\UDK.exe</value>
                </setting>
                <setting name="FormSize" serializeAs="String">
                    <value>1242, 771</value>
                </setting>
                <setting name="SplitDistance" serializeAs="String">
                    <value>364</value>
                </setting>
                <setting name="LastMapToPlay" serializeAs="String">
                    <value>DM-Deck</value>
                </setting>
                <setting name="ExecCommands" serializeAs="String">
                    <value />
                </setting>
                <setting name="ContainerWidth" serializeAs="String">
                    <value>0</value>
                </setting>
                <setting name="ExtraGameTabOptions" serializeAs="String">
                    <value>?game=mymod.DeathGameInfo</value>
                </setting>
                <setting name="GFxImportList" serializeAs="String">
                    <value>aaa.swf</value>
                </setting>
                <setting name="NoSound" serializeAs="String">
                    <value>True</value>
                </setting>
            </UDKFrontend.Properties.Settings>
        </userSettings>
    </configuration>

  28. #28
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    The container width got set to zero in your config file, which caused the problem. I've put a check to prevent that problem from appearing in the latest version (v1.0.6.5)

  29. #29
    MSgt. Shooter Person
    Join Date
    Sep 2010
    Location
    Lisbon, Portugal
    Posts
    156

    Default

    btw, two things:
    1. could you make an option to hide the program on the taskbar, leaving only the system tray icon visible? like winamp. I have no idea if its an easy thing to do or not.

    2. I put this in the extra options
    Code:
    -nomoviestartup -ConsolePosX=0 -ConsolePosY=0 ?game=AGame.AGame
    but the game type flag is ignored. Same thing happens with the original frontend.

    I've tried with ?game=AGame, ?AGame.AGame, ?AGame... nothing..

  30. #30
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    1. I'll add that to the next version
    2. If ?game=... is added right at the beginning of the command line e.g. if the Map to play box contains '?game=AGame.AGame DM-Deck', then the custom game is used, but this doesn't allow you to select a map i.e. map name also needs to be at the beginning. No idea on how to get both of them work together.

  31. #31
    Technical Writer - UDN
    Join Date
    Aug 2006
    Posts
    3,928
    Gamer IDs

    Gamertag: ffejnosliw

    Default

    I think you are wanting to specify a map URL, like this:

    DM-Deck?game=AGame.AGame

    That should load the DM-Deck map using the AGame gametype.

  32. #32
    MSgt. Shooter Person
    Join Date
    Sep 2010
    Location
    Lisbon, Portugal
    Posts
    156

    Default

    DM-Deck?game=AGame.AGame -nomoviestartup -ConsolePosX=0 -ConsolePosY=0

    doesn't work either :\

  33. #33
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    It does work. Put "DM-Deck?game=AGame.AGame" in the 'Map to Play' box, and all the other options in the 'Extra Options' box.

  34. #34
    MSgt. Shooter Person
    Join Date
    Sep 2010
    Location
    Lisbon, Portugal
    Posts
    156

    Default

    oh.. i see thanks

  35. #35
    MSgt. Shooter Person
    Join Date
    Mar 2009
    Location
    Victoria, Australia
    Posts
    419

    Default

    Quote Originally Posted by Hourences View Post
    If you copy paste something in UnrealEd, you can paste it into notepad and it will be converted into T3D, Unreal text. It will be readable, and you can easily make adjustments in notepad, like changing the location of the actor, and then copy paste it back into UnrealEd. I think this possibility can be exploited and allow for new tools to be created. One big thing lacking in the editor is an array tool. If you got 20 lamps and you want to place them all into a straight corridor you got to place all 20 manually, and manually measure the distance between each. Let alone if you want to place them in a circle. That is near impossible to do without first placing a temp cylinder mesh so you got a guideline as to where exactly to place them... So I was thinking, if you would be able to copy paste an actor into an external program, and if that external program would then be able to duplicate what you pasted X times, and adjust the rotation and location values from each instance, and then give you a text back you can paste into the editor, you would basically have a full blown array tool.

    From there on there is probably a lot more you can do by modifying things in text, and then pasting it back.
    Just wanted to point out that when writing tools from the ground up, ALOT of the binaries with UDK are Managed (or partially written in managed code), which means that can easily be imported and have functionality from them used. I reflected and recompiled SwarmAgent and SwarmCoordinator last week just as a test. There are probably alot of tools and functionality that can be done, especially given that the functionality that pipes console output from UDK's commandlets is easy to do.
    I've considered writing a Continuous Integration tool using this stuff, auto-compiling and committing of scripts (using RegEx to match lines for compiler errors or warnings), auto email notification of users of compiler issues/warnings, adding the ability to trigger cooks/packages/build uploads remotely (for instance through Skype commands or a web interface). Think Hudson or CruiseControl, but for UnrealScript. Unfortunately there are a few limitations with using that stuff with games (one of the major features are things like auto-running unit tests, which is pointless for games).
    Couple a tool like that with your SVN repo and project management tool (my team uses Redmine, which features a basic but useful REST API)... A managed DLL being used through DLLBind can easily do things such as web requests and whatever, providing the ability to write tools for things such as in-game bug reporting, beta 'lock-outs'/authentication etc.
    Two of the major issues: 1, I don't have time to do any of that
    2. There still isn't a way to plug into UnrealEd. Managed binaries can be easily loaded at runtime. It would be fantastic to see Epic provide us a set of interfaces and support for a plugin architecture for the editor.
    Last edited by Wraiyth; 09-18-2010 at 05:31 AM.
    www.wraiyth.com - My blog, including UDK tutorials.
    www.pubgames.net.au - Australia's newest Indie Development Studio!
    Follow me on Twitter!

  36. #36
    Redeemer
    Join Date
    Nov 2009
    Location
    Crete
    Posts
    1,044

    Default

    First of all, you did a great job here. Thank you very much. Much more functional in comparison to the original UFE.
    Just a thingky... I press full recompile and I get a known warning related to my script Then I just press make and I get zero warning, while the UFE would show the warning. Is that suppose to happen?

  37. #37
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    I couldn't recreate the problem you mentioned. I placed two types of warnings in my code for testing. The 'Full recompile' option gave the warnings but subsequently pressing 'Make' did not. The same thing happened with Unreal Frontend too. Does it have something to do with your particular warning?

  38. #38
    Redeemer
    Join Date
    Nov 2009
    Location
    Crete
    Posts
    1,044

    Default

    Just an unknown property warning in the defaults of a class. But...
    It's now fixed... No idea how though. All I did was to move the .exe from my desktop to UDK's folder (Just made a shortcut on my desktop instead).

    And again, great tool, thank you.

  39. #39
    MSgt. Shooter Person
    Join Date
    Mar 2010
    Location
    Victoria, Australia
    Posts
    313
    Gamer IDs

    Gamertag: NothAU

    Default

    This work with the September build?
    Gears of War 2: \\★//
    Gears of War 3: 17 (Console + EE)
    My Twitter
    _____
    Avoidance: A Knightly Duty - RELEASING NOVEMBER 3RD - Vote for the price on http://www.4amcode.com/
    TeamBPS Website | Twitter | IndieDB

  40. #40
    MSgt. Shooter Person
    Join Date
    Nov 2009
    Posts
    152

    Default

    Yes it works with September build. However, for collecting the game, or creating an NSIS installer, you need to add 2 extra lines to any of the Exclude sections of the Manifest file:

    Code:
    <string>Binaries/UDK.exe</string>
    <string>Binaries/GameplayProfiler(.*)</string>
    This will remove extra files that were added in this build, but aren't required by the end user. The official packager does include them for the end-user, but that's probably because they forgot to modify the manifest file.


 
Page 1 of 2 12 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Copyright ©2009-2011 Epic Games, Inc. All Rights Reserved.
Digital Point modules: Sphinx-based search vBulletin skin by CompletevB.com.