Project Perfect Mod Forums
:: Home :: Get Hosted :: PPM FAQ :: Forum FAQ :: Privacy Policy :: Search :: Memberlist :: Usergroups :: Register :: Profile :: Log in to check your private messages :: Log in ::


The time now is Thu Mar 28, 2024 6:40 pm
All times are UTC + 0
A question about the game engine, or "Why not YR?"
Moderators: Dawn of the Tiberium Age Staff
Post new topic   Reply to topic Page 1 of 1 [25 Posts] Mark the topic unread ::  View previous topic :: View next topic
Author Message
thehx
Vehicle Drone


Joined: 24 Feb 2016

PostPosted: Wed Feb 24, 2016 3:07 pm    Post subject:  A question about the game engine, or "Why not YR?" Reply with quote  Mark this post and the followings unread

Actually, the question popped up the moment I first launched the mod. Why are you not using far more advanced Yuri's Revenge, backed by the almighty Ares? A lot of restrictions you've encountered while working with TS do not apply there, the engine is far more versatile, and the amount of useful UI commands available to players is even more amazing! Just imagine how much good would that bring for this (already totally amazing) mod!

- Z-queue, far more advanced than q-moves
- separate tabs for buildings and defences
- far more versatile game rules (powered Ares)
- veteran units sorting (Y key)


So, the question is, Why TS? There are lots of YR mods on the PPM/moddb, why are you modding TS?

I am not saying that what you've done is bad (the mod is amazing no matter what I say), I am merely asking, why not YR?

Back to top
View user's profile Send private message
MustaphaTR
Scorpion Sniper


Joined: 22 Jan 2015
Location: Kastamonu, Turkey

PostPosted: Wed Feb 24, 2016 3:39 pm    Post subject: Reply with quote  Mark this post and the followings unread

Primary reason is tileset TS has smaller tileset that 24x24 tilesets of RA and CnC can be easily translated. In other hand RA2's ones are bigger and requires resizing which also requires ome touch-ups if you want to make them look good. To make a proper RA2 tileset normal tileset should be 32x32 which D2K's one is. (There is even a public D2K tileset here.)

Note: I'm not a developer of mod these are just my toughts.

_________________
CnCD2K Mod: http://www.moddb.com/mods/red-alert-2-yuris-revenge-cncd2k-mod
Changed Dune Mod: http://www.moddb.com/mods/changed-dune
MustaphaTR's D2K Mod: http://www.moddb.com/mods/mustaphatrs-d2k-mod
Generals Alpha: http://www.moddb.com/mods/generals-alpha
Romanov's Vengeange: https://www.moddb.com/mods/romanovs-vengeance

Back to top
View user's profile Send private message
Bittah Commander
Defense Minister


Joined: 21 May 2003
Location: The Netherlands

PostPosted: Wed Feb 24, 2016 5:13 pm    Post subject: Reply with quote  Mark this post and the followings unread


_________________

Back to top
View user's profile Send private message Send e-mail ModDB Profile ID YouTube User URL Facebook Profile URL
^Rampastein
Rampastring


Joined: 11 Oct 2008
Location: Gensokyo

PostPosted: Wed Feb 24, 2016 10:19 pm    Post subject: Reply with quote  Mark this post and the followings unread

In addition to the cell size the TS engine also has some other benefits, the biggest ones compared to YR/Ares being working saves (including multiplayer saves!) and that we can make the mod stand-alone, because Tiberian Sun is free. YR hasn't been made freeware by EA, so YR mods are not allowed to be stand-alone without EA sending lawyers to your door. Also, there was no Ares when DTA was started, so at the time YR didn't have nearly as many capabilities that the TS engine doesn't have.

UI wise the YR engine would've been superior though. I really like the sidebar and how it can be controlled with hotkeys unlike in TS.

_________________
CnCNet Client | CnCNet TS patches | More Quality-of-Life Improvements for RA Remastered


Back to top
View user's profile Send private message ModDB Profile ID Facebook Profile URL
thehx
Vehicle Drone


Joined: 24 Feb 2016

PostPosted: Thu Feb 25, 2016 12:39 am    Post subject: Reply with quote  Mark this post and the followings unread

It is very, very, veeery sad as in terms of UI, YR has FAR superior control over battlefield, and in terms of modding possibilities, YR+Ares is also far more advanced than TS.

Legal issues would not be a problem if the mod will be distributed just as a mod (CnC mashup / CnC Reloaded are doing fine, I believe?)

But if the RA1/TD units will look too small on RA2/YR engine, then I guess nothing we could do except scurpulously redrawing each single unit in higher resolution using a good tool like PS or Gimp, which obviously would require hundreds of hours from people who are skilled with said programs. Moreover, if the RA1/TD tiles are of incompatible size and therefore will not glue together seamlessly, one would also need to come up with a tileset based on the original one, but of a different size. In short, an amount of work so big that it is just unethical to ask someone to do for free.

But, thanks for replying and caring. You guys are great, you did great job, I enjoyed completing every solo mission and then every co-op mission I found to be playable with CPU allies.

Also, I believe all of you (of course) tried OpenRA, which recently became far more playable (adjustable game speed, more stable compared to 1-2 years ago). Perhaps moving there is an option? There certainly will be no tile/unit size compatibility issues... And in terms of gameplay controls it beats whatever old RTS engine you might suggest, as you can just go ahead and program your own controls in C#, straight-forward, no restrictions.

Moreover, they are working on multiplayer saves, in form of "Resume From Replay". Nowhere near ideal, but 100% better than an ideal that is never implemented, as pchote said on the corresponding github issue page.

Back to top
View user's profile Send private message
^Rampastein
Rampastring


Joined: 11 Oct 2008
Location: Gensokyo

PostPosted: Thu Feb 25, 2016 12:51 am    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
Legal issues would not be a problem if the mod will be distributed just as a mod (CnC mashup / CnC Reloaded are doing fine, I believe?)

It would still restrict our playerbase. Our players would need to own YR and have YR installed in order to play DTA, while currently players don't need to own anything or have any other game installed to play DTA.

About OpenRA, we've actually been following it for a while. Once it can support most / nearly all of the TS engine features that we need and performs well enough, it's possible that we'll move to it.

If we do move to OpenRA, it's also likely that we won't port the whole mod with all content straight away, but release a basic "multiplayer beta" first while also keeping the TS version online. Porting a mod as big as DTA isn't a quick process at all.

Another project that we keep an eye on is RedAlert++. While not directly related to TS right now, in the long run might be beneficial for TS as well.

_________________
CnCNet Client | CnCNet TS patches | More Quality-of-Life Improvements for RA Remastered


Back to top
View user's profile Send private message ModDB Profile ID Facebook Profile URL
thehx
Vehicle Drone


Joined: 24 Feb 2016

PostPosted: Thu Feb 25, 2016 2:30 am    Post subject: Reply with quote  Mark this post and the followings unread

long story short: "Awesome news, can't wait to try your mod on OpenRA!"

This is actually better news than I hoped to hear. Thanks a lot, and if you ever decide to actually go and make an OpenRA mod, I'd love to give it a try. Thank you! Good news indeed!

As for RA++, I am not so sure, as their efforts are kept private, and I can't judge the quality of their work. Rewriting a game engine, even that of an old game, is a hard task requiring lots of hours of skilled programmers.
If they are not skilled, the game will be leaky, buggy or (no, most likely, AND) hard/impossible to properly maintain.

C++ in general is nowhere near C# in terms of user-friendliness, it requires FAR greater mental discipline from the programmer, and modern C++, though being almost unreasonably powerful in terms of language features, brings lots of complexity never (seldom, at least) found in high-level programming.
It is not that there are much less complexity in high-level programming, no, but the SORT of complexity C++ brings is completely different, and if the RA++ dev team consists of univ students, THAT sort of complexity can easily make things ugly. What is even worse, the ugliness I'm talking about is almost never spotted before it is too late, and the project is measured in hundred thousands of lines of code.
(I am a C# programmer, and of C++, I do not know enough to write production code. The very thought of some of the C++ typedef examples or of the fact that "T const" and "const T" are semantically different, scares me)

It is not that I wish the RA++ project to fail – in fact, it is the opposite. I'd LOVE to play the vanilla RA in hi-res with every single thing working exactly like it did in the original game. It is just that I am not sure that they could pull it off, and not because their lack of skill, but because the task would prove too hard.
But if they do, and if their implementation will be fast and furious, I'd express my sincere gratitude, just like I did to your team, for the amazing job. I love classical CnC games, and it is great that there are lots of people who prefer them over modern strategies. To me, RA3 felt emptier than RA1/RA2, and I forgot about it.

Huh, that was a lot of text, sorry 0_o

Back to top
View user's profile Send private message
Bittah Commander
Defense Minister


Joined: 21 May 2003
Location: The Netherlands

PostPosted: Thu Feb 25, 2016 4:53 am    Post subject: Reply with quote  Mark this post and the followings unread

At the time I started working on DTA, TS actually wasn't freeware yet either and while I was strictly a TS modder at the time, I certainly would have considered using YR if it wasn't for the way too large cell size and also a few other limitations such as the fact that it was impossible to make tiberium damage infantry. DTA also started out with just 2 factions, meaning there would've been a lot fewer benefits with using YR at the time in the first place.

Anyhow, as mentioned, we're currently keeping an eye on both OpenRA and RA++ and while OpenRA will probably have all necessary features we need for DTA sooner, it will probably still take a while. Currently especially the movement of vehicles and aircraft leave something to be desired. The smoothness of the game also suffers from the fact that it's based on 25 FPS (when units move, it basically looks similar to when you give a vehicle in TS a very movement high speed and then watch it move with a low game speed), but it might not be very difficult to change that to 60 FPS.

_________________

Back to top
View user's profile Send private message Send e-mail ModDB Profile ID YouTube User URL Facebook Profile URL
^Rampastein
Rampastring


Joined: 11 Oct 2008
Location: Gensokyo

PostPosted: Thu Feb 25, 2016 7:48 am    Post subject: Reply with quote  Mark this post and the followings unread

Changing the framerate isn't difficult at all.

RA++ is written by very experienced programmers who have been part of this community and disassembling the games for over 10 years. According to them, they watch closely that their code performs similarly to the original Westwood code. I'd expect the code quality to be high.

_________________
CnCNet Client | CnCNet TS patches | More Quality-of-Life Improvements for RA Remastered


Back to top
View user's profile Send private message ModDB Profile ID Facebook Profile URL
thehx
Vehicle Drone


Joined: 24 Feb 2016

PostPosted: Thu Feb 25, 2016 11:49 am    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
RA++ is written by very experienced programmers

That is good to hear!

Quote:
Currently especially the movement of vehicles and aircraft leave something to be desired.

Actually there are tons of such things:

- The default action cursor should change to attacking if the cell under it contains at least one enemy infantry unit, even if the mouse does not exactly point at it, just like original RA
- The vehicles react (to orders) slow
- The infantry react even worse (remember old RA1/TD infantry behavior? They can be stopped (S) everywhere, they redirect to new target cell from any position or state, even when already moving from one cell to another, the CellPosition being purely logical. Therefore, an order to attack is executed immediately, if the target is within range. Now look back to OpenRA...

But, on the other hand,
- Total control over the game logic. Any prerequisites, any type of production queue (per building or global), flexible traits system...
- You can bind to any key, customizable, any action you might program
- Special units and structures (like Hero units) are easily made thanks to the inheritance system...

Back to top
View user's profile Send private message
Bittah Commander
Defense Minister


Joined: 21 May 2003
Location: The Netherlands

PostPosted: Thu Feb 25, 2016 2:37 pm    Post subject: Reply with quote  Mark this post and the followings unread

We're aware of the benefits and while some of the cons can be overlooked, the core gameplay mechanics need to work at least as well as in TS (or even just TD/RA) before moving porting DTA to it. And with core gameplay mechanics I'm primarily referring to unit behavior and responsiveness.
Even if the developers get infinite possibilities, it's pointless if the actual players won't be able to enjoy playing the mod at least as much as before after the port.

_________________

Back to top
View user's profile Send private message Send e-mail ModDB Profile ID YouTube User URL Facebook Profile URL
Lin Kuei Ominae
Seth


Joined: 16 Aug 2006
Location: Germany

PostPosted: Thu Feb 25, 2016 2:51 pm    Post subject: Reply with quote  Mark this post and the followings unread

thehx wrote:
remember old RA1/TD infantry behavior? They can be stopped (S) everywhere, they redirect to new target cell from any position or state, even when already moving from one cell to another, the CellPosition being purely logical.

That also caused quite some trouble.
e.g. you could stack an unlimited amount of infantry on a single cell, by just stopping them before they reach one of the 5 inner cell places.
50 bazookas + 50 medics on the same cell can be pretty deadly to anything that can't kill them with one shot.
I assume that's why infantry in TS and RA2 behave a bit different than in TD/RA1.

_________________
SHP Artist of Twisted Insurrection:  Nod buildings

Public SHPs
X-Mech Calendar (28 Mechs for GDI and Nod)
5 GDI, 5 Nod, 1 Mutant, 1 Scrin unit, 1 GDI building

Tools
Image Shaper______TMP Shop______C&C Executable Modifier

Back to top
View user's profile Send private message
CCHyper
Defense Minister


Joined: 07 Apr 2005

PostPosted: Thu Feb 25, 2016 8:49 pm    Post subject: Reply with quote  Mark this post and the followings unread

Thanks for the vote of confidence Rampastein and Bittah, it is very much appricated.

thehx wrote:
As for RA++, I am not so sure, as their efforts are kept private, and I can't judge the quality of their work. Rewriting a game engine, even that of an old game, is a hard task requiring lots of hours of skilled programmers. If they are not skilled, the game will be leaky, buggy or (no, most likely, AND) hard/impossible to properly maintain.

C++ in general is nowhere near C# in terms of user-friendliness, it requires FAR greater mental discipline from the programmer, and modern C++, though being almost unreasonably powerful in terms of language features, brings lots of complexity never (seldom, at least) found in high-level programming.

It is not that there are much less complexity in high-level programming, no, but the SORT of complexity C++ brings is completely different, and if the RA++ dev team consists of univ students, THAT sort of complexity can easily make things ugly. What is even worse, the ugliness I'm talking about is almost never spotted before it is too late, and the project is measured in hundred thousands of lines of code.

(I am a C# programmer, and of C++, I do not know enough to write production code. The very thought of some of the C++ typedef examples or of the fact that "T const" and "const T" are semantically different, scares me)

It is not that I wish the RA++ project to fail – in fact, it is the opposite. I'd LOVE to play the vanilla RA in hi-res with every single thing working exactly like it did in the original game. It is just that I am not sure that they could pull it off, and not because their lack of skill, but because the task would prove too hard.
But if they do, and if their implementation will be fast and furious, I'd express my sincere gratitude, just like I did to your team, for the amazing job. I love classical CnC games, and it is great that there are lots of people who prefer them over modern strategies. To me, RA3 felt emptier than RA1/RA2, and I forgot about it.


We are private for a very good reason, but mostly due to the fact that I want RA++ to be presented in a professional manor, and as a representation of my 10+ years research and work, aswell as OmniBlade's blood, sweat and tears. We have put a lot of our free time into this project, and the most progress has been made since 'Blade joined almost two years ago.

It will be public, soon.

In terms of testing and catching bugs and leaks. We have a full test suite that runs various tests and validators on all the major components of the engine, and this allows us to catch anything early on.

Another great asset to us is that we have quite a few AAA industry programmers who guide us in the right direction when we are troubleshooting, and a handfull of them are actually guys who wrote the original C&C titles (specifically Joe Bostic and Greg Hjelstrom). So we are learning a great deal as we go also. Smile

I will not lie, there has been times when I asked myself "Is this all worth it?" and "I'm not getting paid for this shit!", but I try to remember why I started the project in the first place, and that the goal is very much possible. After all, I started this as a journey for myself, and whoever enjoys the project after its complete, thats an additioanl accomplishment Smile

And hey! When you have spent over 7 years working on a project, and all the low level core components (Thanks 'Blade!), even this screenshot brings me so much joy and pride!



ss06.png
 Description:
 Filesize:  8.53 KB
 Viewed:  4522 Time(s)

ss06.png



Back to top
View user's profile Send private message
Tore
Plasma Trooper


Joined: 15 Jun 2006
Location: The way north

PostPosted: Thu Feb 25, 2016 9:22 pm    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
I'd LOVE to play the vanilla RA in hi-res with every single thing working exactly like it did in the original game.


You can already do that.

In the last 8-7 years RA (and C&C1) has got a lot of fan patches, one of them is allowing the games to run in higher resolutions.

The original games can technically be patched to do anything, but the process is hard and time consuming (if C++ sounds tedious, try x86 Assembly) and in time as the amount of patches grows it will become more and more unmaintainable.

Projects such as OpenRA and RA++ are the future and I'm excited to what they will bring.

_________________

Back to top
View user's profile Send private message Visit poster's website Skype Account
thehx
Vehicle Drone


Joined: 24 Feb 2016

PostPosted: Thu Feb 25, 2016 10:28 pm    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
if C++ sounds tedious, try x86 Assembly

There are different kinds of difficulties in programming. Understanding assembly language requires one kind of skills; understanding dependency injection, other high-level modern practices/patterns of software engineering requires another kind of skills; understanding neural networks or complicated mathematics in programming requires yet another set of skills; it is not about what is more difficult, it is more about kinds of difficulties, and not each of such kinds can be effectively weightened to be compared with other kinds to find out "which one is harder".


Quote:
We are private for a very good reason


No, no, no, no, no. Wait a second.
I didn't mean to offend you guys in any way, I just didn't knew details on your dev team, okay?

It is awesome that your team are skilled professionals. The fact that some of the original wws developers are guiding you is even more amazing, and, besides the fact that it speaks well of you, it brings confidence in the quality of the final product. Surely, if your team is comprised by skilled professionals, backed by ex-WWS guys, it is clear that you will reach your goal and we will see something amazing at the end. Personally I won't mind giving a glance or two at the sources when (or if) you will publish it on github. Although I do not use C++ at work, I can still read it... or so I hope Smile.

Also, if you do not mind me, can you answer a few questions?
I am curious:

- Will RA++ support (at least optionally) extended controls like T in RA2, queuing units, etc?
- Will it replicate, ehm, how do I say it, features of the original game that were possibly non-intentional? Like mammoths sitting on Teslas or formation-move trick (F key in RA1)?
- High resolutions, of course?
- Will it have more modding support than the original game? (I understand that the source code will be public, but personally I consider modding, ehm, somewhat simplier to learn than quality C++ programming)


PS. I've read comments on particular OpenRA github issues (we even participated a bit around 2 years ago), and, as the guys said there, most of them are univ students... So I made a mistake of concluding that RA++ team is somewhat similar... but it turned out that you guys are hardcore pros  Embarassed , "oops". Actually, this is awesome. Your dedication speaks good for you. I'll wait until I can try RA++, thanks for your efforts!

Back to top
View user's profile Send private message
Tore
Plasma Trooper


Joined: 15 Jun 2006
Location: The way north

PostPosted: Thu Feb 25, 2016 10:57 pm    Post subject: Reply with quote  Mark this post and the followings unread

thehx wrote:
Quote:
if C++ sounds tedious, try x86 Assembly

There are different kinds of difficulties in programming. Understanding assembly language requires one kind of skills; understanding dependency injection, other high-level modern practices/patterns of software engineering requires another kind of skills; understanding neural networks or complicated mathematics in programming requires yet another set of skills; it is not about what is more difficult, it is more about kinds of difficulties, and not each of such kinds can be effectively weightened to be compared with other kinds to find out "which one is harder".


I guess I wasn't clear enough about what I meant. I was not trying to compare which language is harder just trying to say that many things in assembly is more time consuming than C++.

Many of the patches fans have made over the years are written in assembly. OpenRA and later RA++ give people the ability to program in more known languages.

_________________

Back to top
View user's profile Send private message Visit poster's website Skype Account
CCHyper
Defense Minister


Joined: 07 Apr 2005

PostPosted: Thu Feb 25, 2016 11:26 pm    Post subject: Reply with quote  Mark this post and the followings unread

thehx wrote:
No, no, no, no, no. Wait a second.
I didn't mean to offend you guys in any way, I just didn't knew details on your dev team, okay?

Was not offended at all Smile

thehx wrote:
It is awesome that your team are skilled professionals. The fact that some of the original wws developers are guiding you is even more amazing, and, besides the fact that it speaks well of you, it brings confidence in the quality of the final product. Surely, if your team is comprised by skilled professionals, backed by ex-WWS guys, it is clear that you will reach your goal and we will see something amazing at the end. Personally I won't mind giving a glance or two at the sources when (or if) you will publish it on github. Although I do not use C++ at work, I can still read it... or so I hope Smile.

We are not skilled professionals at all, both of our careers are not even in the programming field. But we do try to think and develop in the mind set of a professional team. Smile

As mentioned, we are on a private repositry at the moment (honestly, a lot of the codebase needs cleaning up now as we just reached a big checkpoint), and will be on GitHub once we are ready.

thehx wrote:
Also, if you do not mind me, can you answer a few questions?
I am curious:

- Will RA++ support (at least optionally) extended controls like T in RA2, queuing units, etc?
- Will it replicate, ehm, how do I say it, features of the original game that were possibly non-intentional? Like mammoths sitting on Teslas or formation-move trick (F key in RA1)?
- High resolutions, of course?
- Will it have more modding support than the original game? (I understand that the source code will be public, but personally I consider modding, ehm, somewhat simplier to learn than quality C++ programming)

Not a problem;
1 - There is discussion of possible extended features, and if so, there will be options you can enable via RULES.INI or another medium. All new features will be disabled by default.
2 - This we can not be sure on, as we don't know exactly how the game allowed these bugs to happen...
3 - Of course!
4 - We are trying to write the engine to be modding friendly as much as possible. We can always add features in the future Smile

thehx wrote:
PS. I've read comments on particular OpenRA github issues (we even participated a bit around 2 years ago), and, as the guys said there, most of them are univ students... So I made a mistake of concluding that RA++ team is somewhat similar... but it turned out that you guys are hardcore pros  Embarassed , "oops". Actually, this is awesome. Your dedication speaks good for you. I'll wait until I can try RA++, thanks for your efforts!

Thanks for the kind words, but I would not undermind the work and skill behind OpenRA. The team they have there is great and they are pumping out updates faster than most projects I know of!

EDIT: If you have any more questions, you can vist our forums at http://forums.cncnet.org/index.php?board=113.0, as I'm sure Bittah would like he's topics, on topic Wink

Back to top
View user's profile Send private message
^Rampastein
Rampastring


Joined: 11 Oct 2008
Location: Gensokyo

PostPosted: Thu Feb 25, 2016 11:29 pm    Post subject: Reply with quote  Mark this post and the followings unread

I'm personally a mainly (90+%) C# programmer, although I know the basics of C/C++ and x86 ASM as well; I've fixed some game bugs and implemented DTA's multiplayer save loading support in ASM. But, OpenRA would likely be easier to edit for me than RA++ will be.

However, as has been stated, OpenRA's engine behaviour is somewhat different from the Westwood engine behaviour, so if the RA++ project helps us improve the TS engine, it could still be a better choice to stick with the TS engine and wait until more of the limitations can be lifted. Time will tell. The only thing that we have ruled out is the YR/Ares engine. I've discussed the porting of DTA with the OpenRA team and the project leader (pchote) told me that it'd be best for us to wait until they have officially deemed their TS mod playable and released a beta of it.

One thing that also makes the move to OpenRA more painful is our client. It is 20K lines of C# and offers a lot of possibilities that not even the OpenRA game setup menu offers right now. Making the OpenRA in-game UI match and/or exceed it (both visually and functionally) wouldn't be a small task. Of course there's also that it's hard for me to abandon a project that I've been working on for almost 5 years Smile

I doubt Bittah minds having RA++ discussion here btw #Tongue It is a game engine discussion topic after all.

_________________
CnCNet Client | CnCNet TS patches | More Quality-of-Life Improvements for RA Remastered


Back to top
View user's profile Send private message ModDB Profile ID Facebook Profile URL
thehx
Vehicle Drone


Joined: 24 Feb 2016

PostPosted: Fri Feb 26, 2016 1:27 am    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
I've fixed some game bugs and implemented DTA's multiplayer save loading support in ASM.

Wow. That sounds more brutal than running Brutal Doom on a big screen during some pacifists' party. And even more awesome, too. That is quite a feat.

Quote:
Thanks for the kind words, but I would not undermind the work and skill behind OpenRA. The team they have there is great and they are pumping out updates faster than most projects I know of!



I don't underestimate them. They are great too, I even chatted with them for some time. I am well aware that not all of them are inexpirenced programmers, there are a pack of pros too. Not a pack as in 'HoMM3 pack', but they are doing better than fine! Chris is a professional, no doubt, and makes wise, sound decisions, as well as keeps the project alive and well. Actually, the fact that these guys managed to pull off such a task describes them better than anything. Also, serious participation in projects like OpenRA is a great plus for any student.

As for cursor behavior in OpenRA, I think that when I'll get some free time and some motivation (Smile), I will perhaps just implement it myself. It looks like the need to accurately target small infantry with mouse does not bother them as much as it bothers me... Thankfully they always welcome pull requests (ironically, their local code quality tool yelled at me for spacing issues at empty lines! VS automatically formats C# code, but... SPACES IN EMPTY LINES, CARL! -- yet I understand that having strict coding guidelines is way better than having no coding guidelines)

Quote:
as I'm sure Bittah would like he's topics, on topic  


Okay, okay. "Acknowledgement and acceptance of terms!"© [/quote]

Back to top
View user's profile Send private message
^Rampastein
Rampastring


Joined: 11 Oct 2008
Location: Gensokyo

PostPosted: Fri Feb 26, 2016 1:43 am    Post subject: Reply with quote  Mark this post and the followings unread

thehx wrote:
Quote:
I've fixed some game bugs and implemented DTA's multiplayer save loading support in ASM.

Wow. That sounds more brutal than running Brutal Doom on a big screen during some pacifists' party. And even more awesome, too. That is quite a feat.

Heh, I couldn't have done it without some information given by others. It wasn't that difficult once I had figured it out; it seemed that no one else had simply tried it before. It was so simple that I'm sure that if Westwood cared, they could've pulled it off in a few minutes (excluding the time it takes to create a good UI for loading a saved multiplayer game, that is; in DTA that has actually taken more time too than the x86 ASM part).

Basically, the game was always able to save multiplayer games, but it couldn't load them. Load a saved MP game the "normal" way and the game cuts off all connections to other players. Solution? Load the saved game first, then form connections to other players after that.

_________________
CnCNet Client | CnCNet TS patches | More Quality-of-Life Improvements for RA Remastered


Back to top
View user's profile Send private message ModDB Profile ID Facebook Profile URL
thehx
Vehicle Drone


Joined: 24 Feb 2016

PostPosted: Fri Feb 26, 2016 4:30 am    Post subject: Reply with quote  Mark this post and the followings unread

This only sounds simple to me in case you have either the source code (which I suppose you don't have), or a debug symbols database for TS executable (which I guess someone who's good w/ IDA and has the patience of a saint could produce).

...of course, designing good UI always takes lots of time, but in my opinion, this is more exhausting/slow/painful/routine than difficult. Spent hours are spent hours (not that we regret), but solving a technically difficult (or just unusual) problem is one thing, and wrapping a good UI around it is another, totally different thing. Not that either thing is less important, as Hegel taught, but the former task requires a good engineer, and the second requires a good designer. In terms of software engineering, programmer's hours vs UI designer's hours. And vs UI programmer's hours, as in big serious teams they are often all different people.

Back to top
View user's profile Send private message
Matthias M.
Stealth Laser Trooper


Joined: 15 Jun 2012
Location: Germany

PostPosted: Fri Feb 26, 2016 8:47 am    Post subject: Reply with quote  Mark this post and the followings unread


Back to top
View user's profile Send private message
^Rampastein
Rampastring


Joined: 11 Oct 2008
Location: Gensokyo

PostPosted: Fri Feb 26, 2016 10:56 am    Post subject: Reply with quote  Mark this post and the followings unread

I obviously don't have the source code of TS; nor do I have a symbol database (other than what I've mapped of the exe myself, that is). I got the offsets of the necessary functions from CCHyper and Iran (a person, not the country); I couldn't have done it without their info.

_________________
CnCNet Client | CnCNet TS patches | More Quality-of-Life Improvements for RA Remastered


Back to top
View user's profile Send private message ModDB Profile ID Facebook Profile URL
pchote
Rocket Infantry


Joined: 06 Feb 2015

PostPosted: Fri Feb 26, 2016 7:37 pm    Post subject: Reply with quote  Mark this post and the followings unread

A few comments regarding OpenRA (apologies for throwing this even further off topic!):

Quote:
The default action cursor should change to attacking if the cell under it contains at least one enemy infantry unit, even if the mouse does not exactly point at it, just like original RA


The OpenRA engine lets you specify different sized regions for the combat geometry (the size a unit takes damage over), the selection geometry (the size of the selection box), and the targeting geometry (the size of the target-cursor box).  The default mods currently set the selection and targeting sizes the same, but it is trivial for a mod to increase that to a full cell (or any other size) in its yaml definitions.

Quote:
The vehicles react (to orders) slow


This is due to workarounds for (a) performance limitations in the pathfinding code, and (b) performance limitations in the network code.  These are both relatively self contained problems which can be fixed if/when we find the manpower to give the pathfinding and/or networking code the overhaul that they need.

Quote:
The infantry react even worse (remember old RA1/TD infantry behavior? They can be stopped (S) everywhere, they redirect to new target cell from any position or state, even when already moving from one cell to another, the CellPosition being purely logical. Therefore, an order to attack is executed immediately, if the target is within range. Now look back to OpenRA...


As previously mentioned, this is a bug in the original games that could be exploited in game-breaking ways.  OpenRA follows the more correct TS/RA2 behaviour (actually, not quite: I believe TS/RA2 infantry could short-circuit a move by turning around in the nearest sub-cell, which we don't yet support).

Quote:
PS. I've read comments on particular OpenRA github issues (we even participated a bit around 2 years ago), and, as the guys said there, most of them are univ students...


This hasn't been true for a while now, but there are a couple of universities that are using OpenRA as part of their teaching curriculum.  Most of our TD campaign port and the recent weather effects are based on work done in fourth year compsci projects, and a student is currently doing a project on random map generation with OpenRA.  Cool stuff!

Quote:
However, as has been stated, OpenRA's engine behaviour is somewhat different from the Westwood engine behaviour, so if the RA++ project helps us improve the TS engine, it could still be a better choice to stick with the TS engine and wait until more of the limitations can be lifted.


One of the nice things about the OpenRA design is that the gameplay logic is separated from the core engine, and can be changed or replaced by individual mods.  RA++, when it is released, will provide an authoritive reference implementation of the original behaviour.  This could then be ported to OpenRA for/by mods that want to copy that behaviour.

Back to top
View user's profile Send private message
thehx
Vehicle Drone


Joined: 24 Feb 2016

PostPosted: Sat Feb 27, 2016 12:43 am    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
This hasn't been true for a while now, but there are a couple of universities that are using OpenRA as part of their teaching curriculum.  Most of our TD campaign port and the recent weather effects are based on work done in fourth year compsci projects


I did not mean to offend you guys. Even more, I participated a bit (under my more usual nickname hacklex), together with my friend (kekekeks). Remember the first attempts on headless servers (mostly kekekeks) or first key mapping customizations and q-/w- building placement? We both disappeared for long since then, but sometimes we still download the fresh releases to check it out.

Not long ago I also checked out the source code, even made some cosmetic changes, but nothing serious. But, I was pleased to test the current state of TS mod. Actually, I think it is sweet (both the smoothness of robotic unit movements and overall gameplay quality). Though back when I tried it, the tunnels were, ehm, a bit funny, as the units jumped to the roof (Laughing).

Also, I remember the hype I caused when shared some TS mod screenshots with some random guys I chatted when playing OpenRA, they were like "DAFUQ WHERE DID YOU GOT IT?!" Laughing

Quote:
and a student is currently doing a project on random map generation with OpenRA.  Cool stuff!


That is actually the coolest news since the new FMP season confirmation.

Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Page 1 of 1 [25 Posts] Mark the topic unread ::  View previous topic :: View next topic
 
Share on TwitterShare on FacebookShare on Google+Share on DiggShare on RedditShare on PInterestShare on Del.icio.usShare on Stumble Upon
Quick Reply
Username:


If you are visually impaired or cannot otherwise answer the challenges below please contact the Administrator for help.


Write only two of the following words separated by a sharp: Brotherhood, unity, peace! 

 
You can post new topics in this forum
You can 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


Powered by phpBB © phpBB Group

[ Time: 0.2326s ][ Queries: 14 (0.0149s) ][ Debug on ]