https://www.urbanterror.info/news/blogs/4/
 Login | Register 
Advertisement

Urban Terror Blogs



pages: 1 2 3 4 5 6 7 8 9

HappyDay


I'm Looking at You - Crosshairs and Weapon Spread

posted Wednesday, 27 June 2018
There are plenty of features I'm working on for the new Urban Terror, but not many are that interesting or visual. That, combined with the fact that writing blog posts takes quite a bit of time, is the reason why you see me so rarely post updates of the progress I'm doing on the game. Recently, I've implemented the crosshairs for Resurgence and that is something worth writing about.

So, let's consider the situation in the game when shooting a bullet. The player has a marker in the middle of the screen - the crosshair, which he/she can point in any direction to help direct the bullets from the gun into the target (preferably the enemy's head). Since we want the game to require a bit more skill than to simply click when your crosshair is on a target, there is a feature called spread.

The faster you move and the more shots you fire in quick succession, the larger the spread value. Instead of drawing a line from the player to where the center of the screen is, we calculate a cone and pick a random line inside that cone as the bullet's trajectory. The spread value is used as the angle of the cone. This is what a cone with 20° angle looks like.

The idea is to control your movement and shooting patterns to control the randomness of your shots. Simply holding down your mouse button to fire as quickly as possible (called spray and praying) will increase the spread and the bullets will likely miss when the target is far away. Instead, you want to fire 2-3 bullets and wait a short time for the spread to decrease again before firing another couple of bullets. Crouching will decrease the spread making your shots more accurate, but at the same time making you a more or less stationary target.

Interestingly enough, a cone from the player's view will end up being a circle with constant radius on the screen, no matter how long the cone is. That is because the view of the player is a frustum (a chopped off pyramid), starting at the same point. The radius of the circle on the screen is determined by the angle of the cone, the screen resolution and the field of view. With a bit of trigonometry involved to calculate the size of the crosshair on the screen, it is possible to have the crosshair exactly match the circle described by the spread cone. That means the crosshair can accurately show the player exactly in which area the shots are going to hit. This also ensures you can reliably compare the spread of the weapons by observing the crosshair.

Many games use a single image file as crosshair, which gets scaled up or down. The problem with that approach is that the resolution of the texture determines how big you can scale it before it starts to look pixelated. Also, features like the width of a circle get wider with scale. More advanced crosshairs could use 5 images, one for the center and 4 for the sides, which get moved away from the center as the spread increases. That lessens the problems a bit, but you're limited in the shapes you can use. We chose a different approach. All our crosshairs are 100% procedurally generated, without any image files.

I'll explain a bit how that works in Unreal Engine 4. The basic idea is to do math on the UV coordinates of the material to create geometric shapes. The U coordinates are a simple linear gradient from 0 to 1 in horizontal direction. The same is true for the V coordinates in vertical direction.

Multiplying will scale the gradient, adding and subtracting will move the gradient. With other functions like clamping or taking the absolute, you can easily create a simple line.

With more advanced math like using polar coordinates, it's possible to create all kinds of circular shapes. Combining a bunch of shapes can result in really interesting crosshairs. I've made extensive use of a library of complex functions I created about a year ago, which I'm also selling on the UE4 marketplace (shameless self-promotion detected). Check it out if you're interested in this sort of thing. The most awesome thing about this math-based approach is that all the values for scale, width, radius, length, color, opacity, number of lines, etc. can be adjusted in real time.

Here's a preview of the 20 crosshairs I've created so far and how they scale with the spread value between 0 and 1.

And here's a quick preview in-game.

We haven't built a menu yet to select a crosshair or to adjust all the values. That's something I will do at some later point in time. Also note, there's a second feature called recoil, which moves your view a bit upwards when shooting, which I haven't mentioned here because it's unrelated to the crosshairs.

Each weapon has 4 values related to spread, which we can adjust. The formula used to calculate the spread is different from Urban Terror 4, so we can't (and don't really want to) copy the values from the old game. We are going to change these parameters a lot during development, especially once we enter more extensive private and public testing.

That's it. I hope you enjoyed reading this and maybe learned a thing or two in the process. I enjoyed working on this feature a lot and I'm really excited to have this in the game.

And as always,
Have a happy day! :)
comments: Feel free to discuss this on our forums

BladeKiller


Zbrush and Beyond!

posted Thursday, 19 April 2018

Starting Over

Anyone following FrankieV's videos will have noticed quite a change in the player model Sarah since my last blog. We had to start over with a new base rig so it has been quite a while since I blogged about my progress. I have eight player model outfits completed and am now working on the human morphs and their materials. I bought Zbrush in 2015 to create the meshes and materials for the clothing and gear. I also use Zbrush to do the morphs of the human model, which is a licensed Daz3d base model, and to paint their materials.

Zbrush is amazing and awesome, and I'm so glad I had an excuse to buy it to use for UrT Resurgence. I could rant for a while here but I'll get to a preview of the new player models instead.

The hair and human models are place holders in the following images unless otherwise stated. This is a reference scene that FrankieV and I use to visualize our work.

This is 3 of the 4 members of UTRT with my Anastazie head WIP on Amanda's clothing and gear on the left. Fred and Anastazie are in the center and right respectively. Anastazie's boots are by FrankieV.


Here is Tom showing off his sweater.


Here you can see from left to right Red Dragons' Pierre with and without his kevlar vest, Sarah and Charles.


This is Yasmine with my head WIP. I was testing her face material's roughness.


Zippers are fun to make in Zbrush.


Even the medkit has them.


A little of the back detail on the Kevlar vest for Red Dragon males.


This kind of detail is sculpted into the high resolution mesh in Zbrush which is then baked into the normal map. It's just the push of a button in Zbrush because the low res mesh is in the same tool as the high res mesh so no exporting high and low res meshes nor fiddling with a cage in another program.

I'm currently working on the materials in Zbrush for Yasmine. I've done her head morph and now I am adding skin details like pores and wrinkles that will be baked into her normal map. I will paint her diffuse texture when this detail is finished.

I've finished Anastazie but her finished head isn't in the scene. RabidCow is working on Tom and will be doing Sarah and Pierre. Then we just have Amanda, Charles and Fred's bodies to do before we can move onto the clothes and humans for Jade (from Beijing) , Takeshi (from Tokyo), Soo Min (from Seoul) and the, as of yet, unnamed skate boarder (from London).
comments: Feel free to discuss this on our forums

Gost0r


Gear Loadout System

posted Monday, 09 October 2017
It has been almost a year since I posted an update on the progress of UrT. Well, that's not because we're not working on the game anymore, but rather a question of how to dedicate the time. Do I rather go down the road of recording and writing some blogpost or rather spend the time developing the game instead.

Well, once in a while when something isn't just half-finished, but moreover in a presentable state, it is nice to share it with you:

Old Loadout System:

Before implementing a proper loadout system, weapons were simply put into an array in the player pawn, then you start building a test build for the game and launch it. So if you wanted to test different weapons with other devs, you had to manually change the weapon loadout in the engine, build a new version and distributed to the others.

New Loadout System:

But lately we have put in some fair amount of work into getting a proper loadout system done. We named the result GearPresets.
Each GearPreset has several weapon slots as well as a list of items. Each weapon can have several attachments and potentially other customizations, so do the items.

The GearPresets have serveral other obvious and non-obvious requirements to fullfil:
Allow customizations (such as attachments, or potentially skins)
Network-ready
Shareable config
Menu-ready
Multiple GearPresets

Video:

I've recorded a video that is supposed to show how the current implementation of GearPresets turn out.

Keep in mind that the menu is just temporary as we have focused on functionality rather than visuals (at this stage).



What's not shown in the video is the 'Shareable config' requirement. But as of now, we're saving and loading the different GearPresets from a user-generated config file. So simply copy-pasting the required lines would do it.
comments: Feel free to discuss this on our forums

RaideR


Introducing Frozensand Games Limited

posted Wednesday, 21 September 2016
We don't tend to post information on the boring stuff that goes on in the background of our development team. However, in this case, after many years, the Urban Terror Universe is now incorporated in the United Kingdom.

Frozensand Games Limited ( 10343942 )

Taking over the mantel of Business Administrators, myself and Barbatos take on the responsibility of running the company. BladeKiller and RabidCow are not going anywhere, they will be using their new found time to concentrate on game development. Something we hope will see Urban Terror Resurgence available on Steam as a GreenLight Beta quicker. #confirmed.

0870760 B.C. Ltd our old company will close it's doors soon as it is acquired by Frozensand Games.

It's little over a week until we release 4.3 very much Still Dying and even with our team focus on Resurgence we will still be taking the time to look after and maintain that which is the 4.x series.

We have appointed Blapecool as a new Head Admin. He is now responsible for systems and services provided by Frozensand, so be sure to bug him when Auth goes down.

I will be using my blog going forward to report on the road to Greenlight which is one of my new main responsibilities

As ever, it's ready when its done, but maybe that time will be a little sooner and more like "it's ready when we play something ;)".

Good Luck Us!
comments: Feel free to discuss this on our forums
Advertisement

Gost0r


Evolving the HUD

posted Wednesday, 07 September 2016

CONCEPT

All good things start with a decent design phase. Our design thread contains dozens of posts which centralize around 4 design concepts. In the end we decided to stick with this basic concept done by Nounou:

attention: Keep in mind that this is just a concept and nothing is final.

CURRENT ITERATION



I will explain each element, how it functions and what the icons represent. But before I go ahead, please take note of the following:
Custom settings are not yet available, but we're looking forward to having different settings such as displaying weapon icons instead of the name. You won't find me going into a discussion of Minimap vs Radar, neither will I reflect that element as it's currently not worked on and therefore we might have a seperate blog on it. Please note as well that up to this point I haven't been able to implement the Bigtext feature yet, but it is planned to be part of the HUD. Furthermore, we’ve got plans to have a decent and easy accessable stats sheet, but we haven't worked on it yet, so I'll cover all the stats HUD once we've got a basic ingame version working.

Weaponinfo


EXPLANATION: The weapon info box contains the following information: how many grenades do I currently own, the different types are divided by colour. Additionally we got a bullet and clip counter as well as a weapon mode display (..... = automatic, . . . = semi, .. .. = burst). Then we have the weapon display which contains three weapons at a time. When you scroll down and you currently possess more than 3 weapons, then the pointer will move to the middle and stay there until you have reached the pre-last weapon. And if you scroll down once again - you guessed it - the pointer reaches the bottom end.

DISCUSSION: The weapon info box is in my opinion the most complete component. I'm really happy with the behaviour of the weapon box as you cycle through different weapons - it adds a nice feeling to it. There are slight changes to make on how weaponmode is displayed, but that's just minor stuff.

Health/Stamina bar


EXPLANATION: The health and stamina bar behaves exactly like it always has, so there is not much to explain.

DISCUSSION: There has been discussion of actually merging the speedometer into the bar as a white outline, combined with some optional speed info, but in the end we put the discussion on hold as we came to no final decision whether we should implement it or not. But as it's not a super important feature, we might be able to delay it.

Timer and Info




EXPLANATION: On the top side of the screen we've got the current FPS, ping as well as the remaining gametime displayed. while in the bottom left corner the Hotpotato and Waverespawn box is located. Not much left to explain either as it's just displaying information to the user.

DISCUSSION: As none of the elements is final yet, I'm still trying to find ways on how to improve the information. Right now i find it very distracting to have the Wave- and the Hotpotato timer on the opposite corner of the screen than the other timer. Another aspect is the possible lack of a netgraph. The question is if the display of the ping and FPS is enough to notice if you're having problems with the connection. Of course a netgraph like nounou has illustrated in the concept is beautiful, but the netgraph is supposed to give you information on when you're having problems, so maybe just a text with your in/out packetloss would seal it, but then again it comes down to visual aspiration... duh, let's see what will be the best later on when we come to its implementation.

Scoreboard




EXPLANATION: The scoreboard is very much connected to the team overlay. The teamoverlay contains in its default view the playername, the team score, the armband color as well as the players health. You're able to see the players health of your own teammates as 25% steps (for example if i have 46 health left, i have 2 bars on the scoreboard).
Now, once you pressed the scoreboard button (default: TAB), the teamoverlay lerps out to the middle and becomes the scoreboard. Here we've got the score, the Kills/Deaths/Assists ratio as well as the ping. The other players won't be able to see your real ping, but the indication of your ping range, symbolized with different colours (for example if your have a ping below 50: green). The rest is rather obvious: the list fills in the player names and sorts them by Score>Kills>Deaths>Assists, the spectator bar lists the current spectators.

DISCUSSION: The scoreboard is the most interesting part of the whole HUD in my opinion. And yet it contains some major conflicts in it. The general visual perception of it is horrible, it looks like a random terrible MSpaint made scoreboard. It simply doesn't fit into the Urban Terror theme and neither to my ambitions.
On the other hand I really love the unfolding mechanic that currently exists. It gives it a nice flow and a sort of unique behaviour.
Considering the items of the scoreboard, we're lacking some vital information. We need an indication of what half we are in as well as the score of the previous half. Status icons are planned to be placed behind the armband info (Subsitution, Flag/Bomb carrier), but yet to be implemented.

Feed & Chat




EXPLANATION: The feed contains all sorts of messages, may it be the hits, actual kills, killer's health as well as connection information. The chat is now on the bottom left and currently works very simple: type /all TEXT to send TEXT to everybody, /team to teammates or no command and it will automatically use the team chat. Both commands are being pre-entered with the corresponding key (t: allchat, y: teamchat).

DISCUSSION: Unreal Engine 4 makes it rather hard to implement the right flow for delivering messages from the game core to the UI surface. It doesn't contain features such as the CVAR-system which idtech based engines are famous for, as well as a decent console which can easily used by the public. Of course it comes with a developer console, but that one is not very handy if you want to weave it together with the game UI. We can later explore these aspects even deeper with either making the chat console more powerful (more commands to recognize than only two), or we have to use what's available and work our way around the developer console.
comments: Feel free to discuss this on our forums

HappyDay


Dragon Reborn - Raise Your Flags

posted Thursday, 07 July 2016
It's been a (long) while since my last blog post but I haven't been inactive. As you might have seen in chump's post, we do have new flag models for Urban Terror. Here's some behind the scenes info from me on the topic of flags, dragons and logos.

Let's start with flags

They are very similar to the old urt 4.x flags. They consist of a pole, a simple, rectangular flag cloth, pointing to the side and a golden ornament at the top. When I was working on the flags, I considered changing the shape to something more like a banner, the flag cloth hanging down from a horizontal bar. Possibly adding a second, smaller triangular cloth or other variations. Ultimately I stuck to the old, proven design. Different banner versions can always be added later for map specific flags. This time around, thanks to Unreal Engine 4's wind system, the flapping of the cloth is determined by wind sources placed in the map. It is the level designer's choice how the flags behave in each part of the map. Inside, without wind, they might just hang down, while outside they flap like a chicken that is being chased by an angry fox. Here's a short demo showing a moderately strong wind effect.


New to the game are also two cords and tassels hanging down the pole. I think that makes the flags look a bit more interesting and adds a feeling of preciousness and aesthetics to the otherwise rather simple design. The cords consist of a few physics bodies that react to gravity and any obstacles. So they will move, when a player bumps into them, or has a flag on his back and is running around.



Logos
In case you don't have a clear picture of the old 4.x flags in your mind, here's a screenshot to help you compare. As you can see, the logos have slightly changed. The blue team, the Urban Terror Response Team (UTRT) still has the three bullet shells on the striped background, but now resembling the UrT logo a bit more.
The logo of the Red Dragons has changed from a white dragon in side view to a gold and black dragon in frontal view, which in my opinion looks far better. I took both designs from nounou's awesome concept art. Here's one of them, added for your pleasure.

There also needs to be a neutral (grey) flag for some game modes, but I haven't found the time yet to work on that.

Dragon
The ornament on top of the red flag is UrT's iconic red dragon, which received a major update. Here are two in-game shots.

The old dragon was very low poly and had rather skinny limbs. Nonetheless, the pose was quite dynamic and I used the same pose for the updated dragon. The old model was used as a base for dynamic sculpting in blender. In accordance with the new logo on the flag, I added some more horns and spikes, adjusted the wings and added a few tiny fins on the back and tail. A toothless baby dragon, that couldn't even scare your grandma was reborn as a mighty predator, worthy to be symbol of the ferociousness, with which the Red Dragons fight for what they believe in. The high poly model ended up with about 12 million tris. I had to reduce tris count several times during the sculpting process. Editing became somewhat slow after a while (should have bought more RAM). Still, I enjoyed working on the dragon a lot, this was one of my favorite projects so far.

After the high-poly model was done, I used remeshing algorithms and manual adjusting to create a low poly model, which is used in-game. I baked a normal map and an ambient occlusion map from high- to low-poly to fake most of the detail. The model used in the game has about 8500 tris.

Apart from a very awesome flag ornament, we also could use a larger size version of the dragon as a statue in some maps, lobby screens or similar places.

This concludes my little blog post. I hope you enjoyed reading it as much as I enjoyed creating the new art.

Have a happy day! :)
comments: Feel free to discuss this on our forums

Zenity


Movement Update

posted Saturday, 23 January 2016
Over the last few weeks I have been working on some movement related features.

TL/DR:



In my mind, Urban Terror movement is primarily defined by two words: "Quake" and "Parkour".

The Quake heritage is obvious, but what exactly does "Quake like movement" really mean? When boiled down to basics, what makes Quake movement special is that it's heavily physics driven. Quake never had any sort of fancy movement system. There's no dodging, no double jumps, nothing but WASD and a jump key. Yet the simple whacky physics create gameplay so complex, that Quake movement is considered the most skill based of all. In game design, this is called emergent behaviour and the result is the holy grail of "easy to learn, impossible to master". So when I add movements to Urban Terror, I try to keep this in mind and follow the same pattern. Movements which are easy to execute (no extra keys required) but are driven by physics so that advanced players can bend it in unforeseen ways.

"Parkour" is the perfect real world equivalent to our crazy ass movement, but it has always bothered me just a little that actual Parkour is in fact more agile and advanced than ours. Vaulting and Wall Running are two movements in particular that make perfect sense in a Parkour environment, but I also wanted to implement them in a way that doesn't feel scripted but heavily physics based to fit in with the Quake style. I am very happy how this turned out, and I think that both will become very natural additions to Urban Terror once players had a chance to get used to them.

I am also experimenting with additional legacy Quake physics (similar to Challenge Pro Mode), like ramp jumps and bunny hopping / air control. You can see both in the video, but notice that they are extremely toned down so they don't overpower the usual Urban Terror movement but instead create subtle additions to it. Bunny hopping in particular still needs a lot of testing and feedback so there is no telling if it will actually make it in the end. But ramp jumps are pretty subtle while still being a blast to execute, so I think that those will be fairly uncontroversial.

I appreciate the irony that Urban Terror on Unreal Engine could well become more Quake-like than it ever was on the actual Quake engine.

What About Jump Maps?

Of course we will try to maintain 99%+ accuracy for basic movement (this includes circle jumping, wall jumping, powersliding), but the reality is that most jump maps will have to be updated for HD either way due to minor differences in the engines which are not worth changing (we will only port the bugs which are actually fun :)). Furthermore we cannot stay stagnant if we want HD to be a true resurgence rather than just a monument to days long past, so jump maps will have to evolve along with us. Of course this is not an ideal situation (especially for high score tracking), but we will work with the jump community to make the process as smooth as possible. If you are working on a jump map, please don't hesitate to reach out to us!

That said, one reason I wanted to put a lot of work into movement early on is that hopefully we can get it to a point where we won't feel the need to make significant updates to the movement system for a long time to come.

What About Action Mode?

In a previous blog I hinted at the possibility of an alternate "action mode" that would increase the overall speed and drop all pretences of being tactical. However, after experimenting with this it just doesn't feel right, mainly because the existing maps are not suitable for it. In the end, I think that adding subtle amounts of pro mode style movements to stock Urban Terror is the better approach. Instead of an "action mode" however I could imagine to make infinite stamina a proper option for all game modes. Right now stamina is the one thing that reigns in all the crazy movements and maintains a tactical element to the game. So playing without stamina is very much like playing "action mode", just one that still feels like bona fide Urban Terror. I do think this option would be justified since sometimes we just feel like mindless fragging, whereas other times we may feel like deploying a slightly more deliberate approach.

Anyway, I hope you enjoyed this update and like I said in the disclaimer of the video:

DO NOT PANIC!

This is still early days, and if there's a time to make radical experiments, then it is now. :)
comments: Feel free to discuss this on our forums
Advertisement

New Year's Development Update

posted Saturday, 02 January 2016
Things have been rather quiet from me the last few months, which is mainly because I've been unusually busy. But lately things are getting better and HD is progressing really well, so it's about time for a quick update.

I have nothing big to talk about this time, as most of the work has been on details and putting things together. Turnpike is coming along really nicely and is probably the best example for a classic map that received the full HD treatment. FrankieV is doing a cracking job on it.

Here's a quick rundown of some of the new stuff. Note that the gun has no recoil in this demo, that's obviously going to change. Everything else is work in progress as well. The weapon itself is a stock model, but I like it a lot so I expect that it will make it into the game. Also this is medium quality since my PC is not the beefiest. Don't mind the music, just having some fun. :)

Surface Effects

One thing I've been working on is integrating the obligatory surface effects including customizable footsteps, impact effects, bullet holes, and impact sounds for each material. UnifiedTone has been recording the footstep sounds. I tried to show some of this in the Turnpike video, but this video gives a more detailed overview of the current capabilities:

Activatable Objects and Prompts

Another new feature you can see in the Turnpike video is activatable objects that are hooked up to the game's Activate button. This is accomplished via a simple Blueprint interface and also allows the mapper to set custom prompts, which will helpfully appear on the screen as you get in range of the item. Combined with the virtually unlimited potential of Blueprints, there is very little that you can't do. Want to make a Duke Nukem style flushable toilet, helpfully prompting you to "take a piss"? Knock yourself out!

I expect that we will release this and other map objects together with a mapping guide in a simple mapping kit fairly soon. This definitely wouldn't be the worst time to begin learning UE4 and start mapping for HD. :) Glory and fame awaits!

Quo Vadimus?

2016 is poised to become a fantastic year for Urban Terror with 4.3 around the corner, and HD shaping up nicely. I've had a few personal epiphanies myself, and have never felt more motivated to work on Urban Terror or more optimistic about its future.

I absolutely believe that there is a demand for a no-strings-attached shooter that is simple enough to get into to be a great casual game, while offering a high enough skill ceiling and consistency to be a viable esports title. The kind of game you get hooked on because of its simple yet satisfying mechanics, and then stick with it as it gradually evolves year by year. No subscriptions, no pay to win, no yearly $60 update plus DLC. Just fragging with style, pure and simple.

This is Urban Terror.

Happy new year!
comments: Feel free to discuss this on our forums

Gost0r


A coder's journey begins

posted Monday, 30 November 2015
Hey everybody,

I think it's time to introduce myself. My nick is Gost0r, I am playing and enjoying Urban Terror since 2008 and so far I've been involved in several community projects related to the game. Somewhat, about a week ago, a new journey has started for me when I decided to join FrozenSand, but the most curious and nosy players would already know that :P
I come from a programmer background, I'm currently still studying computer sciences in Germany. So far I havn't been into a serious game development project, but I was just biding my time :)

For now, I've been fiddling into the existing Unreal Engine 4 codebase and my first impressions were very positive. I was quite impressed about the state of development FS had already reached. Gameplay and physics wise I was really happy that I could really find some of the UrT q3 movement feelings and I'm sure that can only get improved with time.

In the very recent days I've been focusing on the Item system, but well images speak louder than words, so please enjoy this short preview:



Not much to show yet indeed as I didn't spend much time on UrTHD development for the moment being. Visuals are not to be taken in account in the video: medkit is still shown on Sarah's back even when she "technically" doesn't have a medkit. I displayed debug messages on the top left so you can see when she does or does not have a medkit in her inventory. The messages recognize that items are picked up and dropped, so it's working as intended.

All I can say is that I'm delighted to be able to work on this game which has been by my side for a good chunk of my lifetime and I learned to love so much.
Let me conclude this short introduction blog by saying that I'll try my best to keep you updated with my works as I go further down the road :)
comments: Feel free to discuss this on our forums

Barbatos


[WARNING] Malicious ghost clients

posted Saturday, 28 November 2015
Hi,

We've had several reports of ghost clients connecting to servers in order to fill them up, always from the same IP address.
There is a cvar which is able to prevent this kind of attack:
sv_clientsPerIp

Server admins, if you are experiencing these attacks, please set the sv_clientsPerIp cvar to a low number such as 2. It will only allow two clients from the same IP address to connect to your server at the same time.

This cvar is currently set to 0 by default, which means no restrictions at all. We will update the default value for the 4.3 final release. Bots and local clients are not affected by this cvar.

Thanks
pages: 1 2 3 4 5 6 7 8 9

Sponsored link
https://www.frozensand.com/

Copyright © 1999-2024 Frozensand Games Limited  |  All rights reserved  |  Urban Terror™ and FrozenSand™ are trademarks of Frozensand Games Limited

Frozensand Games is a Limited company registered in England and Wales. Company Reg No: 10343942