Nice shell map!, since you're using OpenRA as a basis, are you going to roll TD back to the way TD was (SSM launchers, machine gun APCs) and work that way,or is OpenRA's TD going to be the basis of the mod? _________________ Victory! QUICK_EDIT
Joined: 26 Apr 2003 Location: Somewhere in Germany
Posted: Sun Jan 19, 2014 7:25 pm Post subject:
Volgin wrote:
Nice shell map!, since you're using OpenRA as a basis, are you going to roll TD back to the way TD was (SSM launchers, machine gun APCs) and work that way,or is OpenRA's TD going to be the basis of the mod?
The shellmap is just a modified versio of the RA mods' desert shellmap, so most of the credits go to ScottNZ.
TD how it was and then expand on it
That being said, there will probably be some changes to make the new units fit in without too much overlapping in terms of each units' purpose. QUICK_EDIT
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Sun Jan 19, 2014 7:27 pm Post subject:
Cool, OpenRA's reiteration feels bonkers on so many terms. _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
Joined: 26 Apr 2003 Location: Somewhere in Germany
Posted: Tue Jan 21, 2014 12:16 pm Post subject:
Banshee wrote:
Back to activity?
I think so
Although it doesn't really matter yet in which category the forum is located, this was just meant as a small appetizer and "still alive" message. The real publicity campaign won't start before I have more to show off, which might still take a while. QUICK_EDIT
Joined: 16 Feb 2005 Location: North America Posts: You cannot comprehend...
Posted: Sat Feb 01, 2014 6:26 am Post subject:
Iran wrote:
Why don't you go choke on a dick and die you little passive aggressive faggot?
Aaaahhh, such a nice change of pace from all this god damn button down-ness. Take off that tie, you're gonna choke yourself to death.
Iran play some more TSR. I gotta see you and the other players Iraq and Pakistan all at once. Epic-ness will ensue! _________________ Destroy to create. All for the hunt to dominate!
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Sat Feb 01, 2014 12:21 pm Post subject:
Honestly, I don't defend Iran here. But I tried to understand OpenRA's codebase because there was a paper I could have written for implementing AttachEffect into OpenRA as well then comparing that result with Ares's.
After I realized that OpenRA code is some kind of heavy wtf where no code is where you would expect, I've dropped that entire idea. I instead keep my sanity. _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
Joined: 26 Apr 2003 Location: Somewhere in Germany
Posted: Sat Feb 01, 2014 1:55 pm Post subject:
Graion Dilach wrote:
Honestly, I don't defend Iran here. But I tried to understand OpenRA's codebase because there was a paper I could have written for implementing AttachEffect into OpenRA as well then comparing that result with Ares's.
After I realized that OpenRA code is some kind of heavy wtf where no code is where you would expect, I've dropped that entire idea. I instead keep my sanity.
But what exactly does that have to do with my choice?
More importantly, what alternatives are there? C&C95 1.06c r3 is barely moddable and has practically no AI.
RA 3.03p is better in that regard, but lots of C&C1 features were removed from the RA engine and it still pales compared to OpenRA in terms of moddability. And TS/YR+Ares are no option mostly due to isometric-only terrain. This isn't meant to be a DTA copy afterall. Besides, OpenRA does have the upper hand over even Ares when it comes to things like customizable UI, multiple weapon/turret support and a few other things.
I evaluate engines from a modder's perspective, not a programmer's. I'm well aware OpenRA has its short-comings in several areas, but for this specific project it's still the best choice, and I doubt Iran has the modding background necessary to properly judge that decision, no matter his programming prowess. QUICK_EDIT
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Sat Feb 01, 2014 4:24 pm Post subject:
Reaperrr wrote:
It beats even YR+Ares in some key areas.
I know it fits more to this project. But stating that is lol. OpenRA's funky module-system is a mess internally already and it not even hit TS yet. I don't expect it any better at all. _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
More importantly, what alternatives are there? C&C95 1.06c r3 is barely moddable and has practically no AI.
RA 3.03p is better in that regard, but lots of C&C1 features were removed from the RA engine and it still pales compared to OpenRA in terms of moddability. And TS/YR+Ares are no option mostly due to isometric-only terrain. This isn't meant to be a DTA copy afterall. Besides, OpenRA does have the upper hand over even Ares when it comes to things like customizable UI, multiple weapon/turret support and a few other things.
Making a mod for DTA could be an option; TD Xtended would have to replace DTA's enhanced mode then (mods for DTA will likely be made more easy to work with somewhere after spring, once Rampastring adds proper support for them to the launcher).
Both DTA and OpenRA have their own advantages of course; I imagine that coding is harder with OpenRA and DTA has a superior AI for one (in the last OpenRA version I played the AI was almost completely idle, but I don't know how much it has been improved by now), while OpenRA would allow features that the TS engine doesn't support (although CnCNet's spawner does allow many more skirmish/multiplayer options to be added to the launcher in the future, since specific rules.ini changes can now be made on the fly for all players just before the game starts).
Then again I don't know how much work you've already done for OpenRA and switching to anything else might not even be an option anymore... _________________ QUICK_EDIT
Neither DTA or OpenRA really capture TD though, so the original WOULD be better to work on if creating a sort of 'second expansion'. Did 1.06c not introduce Nyerguds ini system or was that never completed? QUICK_EDIT
The original still doesn't have an actual AI (in singleplayer missions it has to be completely scripted how and where to attack per mission) and I doubt even Nyerguds will be able to add a functional AI for multipalyer.
Also, DTA's classic mode is quite close to TD already (especially so after the latest update) and it can get even closer if specific differences are pointed out. A multiplayer/skirmish option to disable queuing units will likely also be added in the future. _________________ QUICK_EDIT
I don't understand the hostility against the OpenRA project at all that I read from seniors here all the time. It feels pretty mean because there is not a big company with a lot of $ behind it, but very few hobbyists who do it in their spare free time for fun.
I usually read feedback and scan it for things we can improve, but I found almost none constructive criticism so far. My impression is that people who claim it just sucks very loudly have not tried it or failed and got frustrated immediately. It feels like people are poking at things they don't understand. If you don't get how the https://github.com/OpenRA/OpenRA/wiki/Traits work or don't know how to contribute to the huge C# codebase, just ask. In these forums or via IRC. It is probably not your fault. The project is alive, things change a lot and documentation is rare as well as usually outdated. Also programming games is not easy, because they are complex simulations where a lot of things can go wrong.
There are valid reasons to chose the legacy freeware games, because their API is stable, they are still fan patch maintained and very popular. If you want to explore new ways that go beyond changing hardcoded INI rules and just replacing graphics, even want to see behind the scenes of how RTS games work, playing around with OpenRA is exactly the right choice and the reason it was created. QUICK_EDIT
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Sat Feb 01, 2014 7:33 pm Post subject:
You can't expect a constructive criticism from me, you never will. Because I think you went with a wrong principle at the first place. Not just about the traits, but about the whole structure of the code. The whole actorbased system is just bad.
That's all. I do approve what you guys are doing, but I feel that either sooner or later you will reach a line after your actor-based system will only cause you headaches.
FYI, Westwood went object-oriented programming, not using interfaces everywhere, but inheritage where possible (and even where it might not be a cool idea, like MouseClass being a child of GScreenClass). I could use the WW principles when I wrote a shooter within 2 months for an uni project.
OpenRA is a choice, but I'll never feel it the right one. _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
FYI, Westwood went object-oriented programming, not using interfaces everywhere, but inheritage where possible (and even where it might not be a cool idea, like MouseClass being a child of GScreenClass).
Interesting. I did not know that you can get information about high level code structure from disassembling proprietary release binaries. Did they not remove the debug symbols? QUICK_EDIT
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Sat Feb 01, 2014 7:52 pm Post subject:
I think they did, because only the class names are reverseable, and probably the compler kept them in to identify the constructors. Because the variable names themselves are pretty much unknown to us and we name them after where they're used.
See https://github.com/Ares-Developers/YRpp for what we know about YR's structure if you're such interested. _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
Reaperrr, thank you for taking the time to give OpenRA a chance. I personally like it and understand parts (the parts I don't understand, I just ask about). Hopefully you can make something great from this. Hope to see more soon! _________________
Tore wrote:
Oh noes Nod32 must have found some GDI32 in the art.ini file!
Thanks for sharing the code. That helps a lot. However you are wrong about the coding style and how the actor system works. OpenRA makes use of inheritance a lot. QUICK_EDIT
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Sat Feb 01, 2014 8:12 pm Post subject:
Sorry, I didn't took a month to get the whole principle of yours. All I seen are interfaces and masks, without any actual code running. Okay, that's not true, the graphics codes are actually easily identifiable.
Agent-oriented programming IMO is not for an RTS. It's not as convenient as you guys think it is. See for example, OpenTTD, which also uses structured programming. And while I follow OpenRA development, I doubt I'll ever like what you're doing.
OTOH a casual RA2 modder could already get some stuff from YR++'s doxygen'd Class Hierarchy page. _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
The structure should be similar to the modern SAGE games (Generals and upwards). The inheritance systems that defines actor templates is actually user configurable https://github.com/OpenRA/OpenRA/blob/bleed/mods/ra/rules/defaults.yaml and not hard-coded. Unlike the OpenRA user interface code where e.g. ScrollPanelWidget is inheriting ButtonWidget which inherits Widget.
Relating to structured programming. Everyone uses subroutines and loops nowadays including OpenRA of course. We do not live in the 1960s anymore with GOTO spaghetti code. QUICK_EDIT
Joined: 26 Apr 2003 Location: Somewhere in Germany
Posted: Sun Feb 02, 2014 12:43 pm Post subject:
Graion Dilach wrote:
Reaperrr wrote:
It beats even YR+Ares in some key areas.
I know it fits more to this project. But stating that is lol. OpenRA's funky module-system is a mess internally already and it not even hit TS yet. I don't expect it any better at all.
Just to make one thing clear: I'd choose OpenRA for ANY project.
Again, I'm talking about features available to the end-user (modder) here, not the underlying code.
For example, OpenRA's armament & turret systems are simply superior to all of WW's engines, including YR+Ares.
Maybe not in terms of setup which is a little complicated, but in terms of the end result you can get out of it.
Custom unit 'hitboxes' aren't present in WW's engines either. OpenRA at least has a customizable health radius, allowing to somewhat fix one of the biggest annoyances of WW's games, namely that warhead spread completely ignored the visual size of a unit.
Then there are lots of other, smaller things that just make modding OpenRA more convenient to me compared to WW's engines.
I think most people just haven't spent any serious effort trying to mod OpenRA. I have spent multiple years modding TS, and quite some time modding YR. I don't feel like going back to either. QUICK_EDIT
Your NextPowerOf2 function assumes a 16 bit integer but has a 32 bit integer parameter.
You create extension functions for one liners but don't use stuff like "public static T[] GetCustomAttributes<T>(this MemberInfo mi, bool inherit = true)" (which is already a one-liner... also why restrict T to a class?)
Why is there IOccupySpaceInfo when it's empty and actually never used?
etc
Really got to agree with Graion Dilach here, from a programming standpoint this can only be named weird. _________________ QUICK_EDIT
You create extension functions for one liners but don't use stuff like "public static T[] GetCustomAttributes<T>(this MemberInfo mi, bool inherit = true)" (which is already a one-liner... also why restrict T to a class?)
Ugh, that is part of the rules inheritance which is definitely bogus at some parts and hard to read which is why no one touched it for years. It needs a makeover. While you are mostly talking code style issues which are not so super important conventions, you will certainly also notice wrong behavior when writing software tests for these functions.
Ju-Jin wrote:
Why is there IOccupySpaceInfo when it's empty and actually never used?
Good question. My guess is that this empty interface is just there to resolve dependencies between traits. Could also be junk. If you are really interested in improving things, I suggest you join the http://open-ra.org/community IRC where at NZ day time also seniors who know more about it than me can answer your questions. QUICK_EDIT
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum