Git Product home page Git Product logo

openra / openra Goto Github PK

View Code? Open in Web Editor NEW
14.0K 383.0 2.6K 316.2 MB

Open Source real-time strategy game engine for early Westwood games such as Command & Conquer: Red Alert written in C# using SDL and OpenGL. Runs on Windows, Linux, *BSD and Mac OS X.

Home Page: https://www.openra.net

License: GNU General Public License v3.0

C# 80.33% GLSL 0.15% Shell 0.65% Lua 15.44% NSIS 0.14% PowerShell 0.10% Makefile 0.09% Batchfile 0.05% Python 0.11% Objective-C 0.21% Fluent 2.65% C 0.08%
game-engine strategy-game-engine csharp cross-platform dotnet openra game engine real-time-strategy command-and-conquer

openra's Introduction

OpenRA

A Libre/Free Real Time Strategy game engine supporting early Westwood classics.

Please read the FAQ in our Wiki and report problems at https://github.com/OpenRA/OpenRA/issues.

Join the Forum for discussion.

Play

Distributed mods include a reimagining of

  • Command & Conquer: Red Alert
  • Command & Conquer: Tiberian Dawn
  • Dune 2000

EA has not endorsed and does not support this product.

Check our Playing the Game Guide to win multiplayer matches.

Contribute

Mapping

  • We offer a Mapping Tutorial as you can change gameplay drastically with custom rules.
  • For scripted mission have a look at the Lua API.
  • If you want to share your maps with the community, upload them at the OpenRA Resource Center.

Modding

Support

  • Sponsor a mirror server if you have some bandwidth to spare.
  • You can immediately set up a Dedicated Game Server.

License

Copyright (c) OpenRA Developers and Contributors This file is part of OpenRA, which is free software. It is made available to you under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. For more information, see COPYING.

openra's People

Contributors

abc013 avatar abcdefg30 avatar alzeih avatar atlimit8 avatar chrisforbes avatar cjshmyr avatar dnqbob avatar dragunoff avatar geckosoft avatar graiondilach avatar icereaper avatar ihptru avatar mailaender avatar mustaphatr avatar obrakmann avatar pavlos256 avatar pchote avatar penev92 avatar phrohdoh avatar punkpun avatar reaperrr avatar rob-v avatar roosterdragon avatar scottnz avatar smittytron avatar soscared avatar teees avatar teinarss avatar tovl avatar ytinasni avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openra's Issues

drop down boxes 'interfere' with each other

In the form to manage games (via join/create server - with playerlist/map etc) selections of team, colors etc are interfered if another player sets same kind of drop down box at the same time. All drop down boxes are affected. Looks like all players are using the same event handler ...

Reproduce:
Create/join server with at least 2 players and set your colors at same time (same with other boxes)

Feature request: In-game-map-downloads

To give map creators the ability to quickly test fresh maps and to enable game hosts to quickly add new maps I want a feature to download OpenRA-Maps directly from inside the game-lobby.
These maps might be hosted on the content website http://content.open-ra.org and on that website there could be features like flagging malicious map files etc.

Crashes on start

Game crashes on start after installation of nVidia drivers.

Works extremely slowly (unplayable) using noveau driver

Have tried both Gl and Cg renderers

OS: Linux (Crunchbang Statler)
Kernel: 2.6.32-5-686 #1 SMP Mon Jan 16 16:04:25 UTC 2012 i686 GNU/Linux
Graphics: nVidia Corporation NV28GL [Quadro4 980 XGL](rev a1)

Exception Log:

System.InvalidProgramException: Unsupported GPU. See graphics.log for details.
at OpenRA.Renderer.SdlCommon.SdlGraphics.InitializeSdlGl (System.Drawing.Size& size, WindowMode window, System.String[] requiredExtensions) [0x00000] in :0
at OpenRA.Renderer.Glsl.GraphicsDevice..ctor (Size size, WindowMode window) [0x00000] in :0
at OpenRA.Renderer.Glsl.DeviceFactory.Create (Size size, WindowMode windowMode) [0x00000] in :0
at OpenRA.Graphics.Renderer.CreateDevice (System.Reflection.Assembly rendererDll, Int32 width, Int32 height, WindowMode window) [0x00000] in :0
at OpenRA.Graphics.Renderer.Initialize (WindowMode windowMode) [0x00000] in :0
at OpenRA.Game.Initialize (OpenRA.Arguments args) [0x00000] in :0
at OpenRA.Program.Run (System.String[] args) [0x00000] in :0
at OpenRA.Program.Main (System.String[] args) [0x00000] in :0

Graphics Log:

Unsupported GPU: Missing extensions: GL_ARB_fragment_shader

OpenGL Information:
Vendor: NVIDIA Corporation
Renderer: Quadro4 980 XGL/AGP/SSE2
GL Version: 1.5.8 NVIDIA 96.43.20
Shader Version: 1.20 NVIDIA via Cg compiler
Available extensions:
GL_ARB_depth_texture GL_ARB_imaging GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shadow GL_ARB_shader$

deployment of troops from APC/chinook

When you deploy troops from an APC or Chinook in CnC, all the infantry units deploy on to the same single spot, instead of the typical "star" pattern of 5 that you would expect. It makes it so that you can't see the different unit types that come out, and you can't select the unit you want. Instead you have to select all of them and then move them, before you can give individual orders.

Openra crashes in multiplayer mode under Linux

When playing Openra (20120315, stable) under Linux (Linux Mint 12, kernel 3.3) using the Cg renderer (OpenGL doesn't work) the game crashes after 15 minutes or so when playing in multiplayer mode.

dmesg says:

Apr 1 22:35:53 hp kernel: [10795.005161] [drm:i915_hangcheck_elapsed] ERROR Hangcheck timer elapsed... GPU hung
Apr 1 22:35:53 hp kernel: [10795.005174] [drm] capturing error event; look for more information in /debug/dri/0/i915_error_state
Apr 1 22:35:53 hp kernel: [10795.009800] [drm:i915_wait_request] ERROR i915_wait_request returns -11 (awaiting 2656541 at 2656537, next 2656543)
Apr 1 22:38:21 hp kernel: [10942.968050] [drm:i915_hangcheck_elapsed] ERROR Hangcheck timer elapsed... GPU hung
Apr 1 22:38:21 hp kernel: [10942.968107] [drm:i915_wait_request] ERROR i915_wait_request returns -11 (awaiting 2690486 at 2690482, next 2690488)
Apr 1 22:40:48 hp kernel: [11090.331136] [drm:i915_hangcheck_elapsed] ERROR Hangcheck timer elapsed... GPU hung
Apr 1 22:40:48 hp kernel: [11090.331194] [drm:i915_wait_request] ERROR i915_wait_request returns -11 (awaiting 2724762 at 2724758, next 2724764)
Apr 1 22:42:20 hp kernel: [11181.792016] [drm:i915_hangcheck_elapsed] ERROR Hangcheck timer elapsed... GPU hung
Apr 1 22:42:20 hp kernel: [11181.792075] [drm:i915_wait_request] ERROR i915_wait_request returns -11 (awaiting 2745304 at 2745300, next 2745306)
Apr 1 22:46:09 hp kernel: [11410.589172] [drm:i915_hangcheck_elapsed] ERROR Hangcheck timer elapsed... GPU hung

Apr 1 22:46:09 hp kernel: [11410.589230] [drm:i915_wait_request] ERROR i915_wait_request returns -11 (awaiting 2800744 at 2800740, next 2800745)

/debug/dri/0/i915_error_state: http://nopaste.info/6910dcea76.html

Playing in singleplayer mode works fine even with lots of bots and when playing for quite a long time. I've had this multiplayer problem with previous kernel versions, too. Is this a driver bug or a bug in the game?

Make AI behavior more varied (code)

Instead of checking for SquadSize dudes hanging around the base every 20 ticks and attacking if SquadSize dudes are present, throw a bit of randomness into the mix (but have the size of AI attack forces still trend towards SquadSize, which is 10 for HardAI). The idea is that sometimes, the bot should attack sooner and with fewer dudes (so it feels like the opponent "decided" to rush) and sometimes save up more, and once in a great while save up a whole bunch (so it feels like the opponent "decided" to turtle) and then attack.

sample implementation: earthpig@b8c834b

On line 284: lowering that from 300 to, say, 250 or 200, will make the bot more likely to attack at around SquadSize units. Having it higher, say at 500, will make it more likely to save up way more. 300 was an arbitrary pick.

On lines 282 and 323: This is the minimum possible attack force. Lowering this will cause the attack sizes to trend more towards SquadSize. 3 was an arbitrary pick.

Playing 1v4 HardAI bots with the above HackyAI.cs, and recording how many units were in each bot's first attack force (recall that SquadSize is 10 for HardAI):
Game 1: 7, 10, 13, 17
Game 2: 11, 14, 16, 20
Game 3: 9, 14, 15, 15

(In light of that sample of 3 games, perhaps use 200 instead of 300)

wish: limits on buildings

For modding it would be good if you can limit buildings, etc: only one chrome, 2 nukes etc.

This will also help against bots making 17 refineries..

New engineering capture code problems

While the new 10-second capture for engineers is a well-received change (by us, anyway), it has introduced a problem with a number of maps. The code itself changes the owner of the captured building to self.World.WorldActor.Owner during the 10-second cooldown. However, the world owner in a number of maps is set to be hostile to all multiplayers; either the "Creeps" player is set to be the world owner, or the "Neutral" player has the multiplayers set to be enemies (no-fly-zone.oramap, for example).

When a building is put into the 10-second cooldown on one of these maps, the buildings become hostile to all players, causing the building to be a candidate for auto-target inside of one's base. This really causes a problem on maps that have capturable neutral buildings, such as oil derricks, as the oil derrick is a desired resource that ends up getting attacked the moment the capture cooldown starts.

building is still under attack when actor (attacker) is in transport

What happend: flaktruck actor started shooting enemy barracks then it was placed into transport (water) but shooting was not stopped; when it was moved far away from that island, barracks still were under attack by flaktruck's weapon.
When transport was deployed, shooting stopped.

What is known: the weapons code still gets ticked even if the actor is in a transport

Pathfinder yanks a lot on island maps against bots

Hey,

I can play OpenRA just fine for a few minutes (last time 4:11) until the game starts lagging: It stops for about half a second and then all animations seem to catch up again (twice the speed) for another half a second and then it stops again. "Stops" means, that it freezes including animations,scrolling, cursor.
I activated the perfomance graph on the bottom left corner, it shows huge spikes is white and blue about every n second.

My system:

OS: Debian Wheezy 64Bit with Gnome 3.2 / Gnome Shell
Graphics: Intel SandyBridge onboard graphics (I think i915) - so I'm using Graphics.Renderer=Cg to prevent glitches
CPU: i5
RAM: 4GB

CPU is < 50% all the time, there is enough memory - no swap usage.
I tried PseudoFullscreen and windowed mode. (I've got dual monitor)

I'd be really happy if I could play the game as I played RA alot back then :)

Mattis

edit: please contact me if you need a screenshot of the perfomance graph!

Surrender - give buildings

When one players quits, surrenders, or get disconnected, they should give their units to team players... Random, the weakest, or a list they can choose from...

Editor: allow setting player colors

Currently you have to hack the yaml, and figure out the proper numbers to put in the ColorRamp. Easiest way to do this currently is to choose the color you want in the lobby, quit, and copy the numbers from ~/.openra/settings.yaml. This is kindof stupid.

3-15-2012: Allied Artillery EXPLOSION bug...

I transplanted this from the forum's because I finally found a working link! (was having issues with the site... dont ask... my PC is all sorts of stupid these days... time for a reformat!)

|||||

Right, so I have confirmed it through several games since 3-15 release (and no i hadn't tested earlier versions for a while so I cant say when it came into existence) BUTTT...

If I line up allied artillery, in a long single line even, and either have an enemy or friendly fire on any of the allied artillery, and they all explode... full health, no matter the rank, no matter the distance of the line...

Several games now I have had artillery lining the walls of a choke point valley, and I first noticed this when I had about 10 of them grouped and an enemy got close enough to exchange fire (i say friendly fire was involved as well due to splash damage even though it was 2 cells away from my artillery unit), and after the single shot on both sides, boom... my entire Artillery group was wiped out...

If you cant seem to replicate this for yourself, let me know, I will join a game, we will ally, and you can watch it happen for yourself...

Units chasing enemy units across the whole map

Units chase enemy units across the whole map, especially "fearless" ore trucks passing by artillery. Units should return their position after a short range, or able to be set to a "stand ground" stance. At the moment its hardly possible to maintain any defensive strategic position because you have to catch the runners all the time.

Crash when starting on Windows 7

I am getting a crash when trying to start the game in Windows 7 on an HP Pavilion Dv6000.

Problem signature:
Problem Event Name: CLR20r3
Problem Signature 01: openra.game.exe
Problem Signature 02: 1.0.0.0
Problem Signature 03: 4f612ff8
Problem Signature 04: OpenRA.Renderer.SdlCommon
Problem Signature 05: 0.0.0.0
Problem Signature 06: 4f612ff9
Problem Signature 07: 16
Problem Signature 08: 1fd
Problem Signature 09: System.InvalidProgramException
OS Version: 6.1.7601.2.1.0.256.1
Locale ID: 1033

Settings of floats are stored as int and out of range in some cases

I'm using the current linux deb packet release and my settings are not stored correctly in some cases, here is one example:
...
Game:
TeamChatToggle: True
ViewportEdgeScrollStep: 1976

Sound:
SoundVolume: 26
...

The ranges for ViewportEdgeScrollStep are between 10f-50f and sound between 0f-1f. I do assume this bug is related to var Ticks in class SliderWidget (If this var set the 'steps' we can do). It's an int (5 by default) and should be a float with a default of 0.1?

How to reproduce:
Just open the game/settings and set scroll speed and audio settings several times with different values.

Aircraft with high movement speed have difficulty landing

It's worth noting that veteran aircraft will have issues landing on afld/fix because of increased movement speed. They'll simply take off again after appearing to have landed.

The issue was is plane attempting to call Rearm or Repair, but the plane's altitude would be >0, not 0. Usually 1. We should try landing these planes a bit sooner.

Add support for disabling sound

In server-only cases etc we don't want to have to sort out OpenAL support. We should have a config item to prevent us from even trying to initialize the sound system

All players dropped from room pre-game

While hosting a game last night I experienced something that have happened a few times before. It was a room with 10 players. Suddenly everyone in the room except for me dropped out instantly and at the same time. The exception.log-file says:

System.IO.EndOfStreamException: Kan ikke lese forbi slutten av dataflyten.
ved System.IO.__Error.EndOfFile()
ved System.IO.BinaryReader.ReadString()
ved OpenRA.Order.Deserialize(World world, BinaryReader r)
ved OpenRA.Network.OrderIO.ToOrderList(Byte[] bytes, World world)
ved OpenRA.Network.ReplayRecorderConnection.IsGameStart(Byte[] data)
ved OpenRA.Network.ReplayRecorderConnection.c__AnonStorey1A.<>m__17(Int32 client, Byte[] data)
ved OpenRA.Network.EchoConnection.Receive(Action2 packetFn) ved OpenRA.Network.ReplayRecorderConnection.Receive(Action2 packetFn)
ved OpenRA.Network.OrderManager.TickImmediate()
ved OpenRA.Game.c__AnonStorey39.<>m__95()
ved OpenRA.Sync.c__AnonStorey30.<>m__65()
ved OpenRA.Sync.CheckSyncUnchanged[T](World world, Func`1 fn)
ved OpenRA.Sync.CheckSyncUnchanged(World world, Action fn)
ved OpenRA.Game.Tick(OrderManager orderManager)
ved OpenRA.Game.Tick(OrderManager orderManager, Viewport viewPort)
ved OpenRA.Game.Run()
ved OpenRA.Program.Run(String[] args)
ved OpenRA.Program.Main(String[] args)

"Kan ikke lese forbi slutten av dataflyten" means "Can not read past the end of the data flow"

chat in lobby with enter

In lobby, if you pressed the map, you have to move your mouse to chat... Why not use enter again like ingame?

Hard to read some colors

When you have a lot of players in the lobby or ingame, it is impossible to read some of the black and other colors... Green also have an advantages on green maps, impossible to see units on gps....

I just want an overlay on lobby and ingame chat....

volume and scrollspeed above the scale at game-start

OS: Linux

When I start the game it seems the settings for volume and scroll-speed got reset (they are far above the scale then).

I'v had a look at ~/.openra/settings.yaml:
ViewportEdgeScrollStep: 27,92
SoundVolume: 0,484
MusicVolume: 0,46

When I start the game now those values get converted to:
ViewportEdgeScrollStep: 2792
SoundVolume: 484
MusicVolume: 46

When I manipulate them to something like "0.484" they get converted to "0,484" and next time to "484".

This seems to be a locale issue. I'm currently using "de_DE.utf8" and when I switch to "en_US.utf8", change the commas to dots in settings.yaml and start the game they stay that way.

dirty workaround would be to do:
export LC_ALL="en_US.utf8"
in the wrapper-script

20120315 - Unable to Join Games, but can host....?

I think... once, I've been able to join a game.

Every other time, it stays at "attempting to connect..." indefinitely.

Linux version (Ubuntu), no networking issues that I'm aware of (eg, no problems in other games and so on, no crazy network settings on my computer or router).

The odd thing is, I can host just fine.

EDIT: I had someone else create a game, and now it works beautifully. Is there something that the majority of hosts are (or aren't) doing? It's odd, because I'll see games with say 5 of 8 people in the lobby, so apparently some people can join those games...

EDIT2: Closing this issue. This was simply small sample size statistical error. All is fine and dandy in the world. It would still be great if these games didn't show up as available to join, but alas the world is not perfect.

Release 20120315 RA: Computer players don't build construction yard

Happens several times now , starting a game with bots on different maps and they don't build the construction yard from construction vehicle :/

Settings/Info

  • 2 players in one team, all available bots in one team (AI hard)
  • did occure on ihp's test server and when I'm creating a server

Unfortunately I can't reproduce it for real atm so I just file it to collect infos ..

C&C mod openra causing crash

Hello my Red Alert runs on the latest patch 3.03 and openra itself runs perfect with it. But whenever I try to start the c&c mod in game openra kicks me back to desktop. I'm using the latest version of openra. (20120315, 2.8 MB)

And that's what the exception.log has to say about this:

System.InvalidOperationException: mods/cnc/sequences/structures.yaml:40: Sequence proc.idle uses frames [0..5] of SHP proc, but only 0..1 actually exist
bei OpenRA.Graphics.Sequence..ctor(String unit, String name, MiniYaml info)
bei OpenRA.Graphics.SequenceProvider.c__AnonStorey64.<>m__138(KeyValuePair2 x) bei System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable1 source, Func2 keySelector, Func2 elementSelector, IEqualityComparer1 comparer) bei System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable1 source, Func2 keySelector, Func2 elementSelector)
bei OpenRA.Graphics.SequenceProvider.LoadSequencesForUnit(String unit, MiniYaml sequences)
bei OpenRA.Graphics.SequenceProvider.Initialize(String[] sequenceFiles, List`1 sequenceNodes)
bei OpenRA.ModData.PrepareMap(String uid)
bei OpenRA.Game.StartGame(String mapUID, Boolean isShellmap)
bei OpenRA.Game.LoadShellMap()
bei OpenRA.Mods.Cnc.CncLoadScreen.TestAndContinue()
bei OpenRA.Mods.Cnc.CncLoadScreen.StartGame()
bei OpenRA.Game.InitializeWithMods(String[] mods)
bei OpenRA.Game.Initialize(Arguments args)
bei OpenRA.Program.Run(String[] args)
bei OpenRA.Program.Main(String[] args)

No clue what's causing it. I even installed openra in my original c&c95 folder (nyerguds version 1.6 rev3) to see if that works. I've also copied all c&c mix. files in my mod folder in my documents for openra to see if that works. None of the 2 test variations worked though. It's just freezing and then crashing with a typical windows message that the application has stopped working. Win Vista 64bit.

Making build icon green on snow maps

Just a small request... I suggest to make the building icon which shows you where you can build green on snow maps only. As it can be sometimes hard to see where you actually build something while both backgrounds (the build icon and the snow temperate) are white.

more then 1 unit at FIX

Sent HARV to FIX (Service Depot), then sent YAK and it landed on HARV. Looks like both repaired, then HARV left FIX and another HARV used depot without problems while YAK was in there.

Screenshot: http://files.ihptru.net/misc/Screenshot-18_1.png

Replay: Not required - Reproducable

To reproduce: happens with any combination of AIR / NON AIR units

Version: 2012-0315

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.