PDA

View Full Version : Engine Improve modmaking and mapmaking stuff.



WimeSTone
07-25-2011, 03:59 PM
Subject:

Improve modmaking and mapmaking stuff, integrate them into game.

Description:

OK, guys and girls. I think, that most of you will agree with me. What increases RTS' popularity? Modability and map-making-ability.

First, about Worldbuilder. One thing, which is mystery to me, why it is still not integrated into game?

Let's look, what happens. You're making a map, and when you want to test it, you got to close wolrdbuilder, then run the game - it is 20-30 seconds wasted, plus game loads into memory SAME STUFF: models, sounds, etc. Some time used for in-game testing, e.g. 1 min. After this again run worldbuilder - 30 seconds more wasted. You loose 1,5 minute in average just to test map. And guess what happens if map has complex scripts and they don't work properly? Thousands times run worldbuilder, run game... In total, you waste 15-20 minutes in average only to debug scripts. You could use this time to drink coffee and rest, not for waiting. :mad: It's a bit annoying. Even if you got enough memory and PC power to run both game and worldbuilder in background, here comes this question - why loading same stuff twice??? Hmmm...
---------------------------------------------------------------------------------------------------
My solution: Integrate worldbuilder into game engine. You run the game, press cute button "Worldbuilder" and start working. You don't waste time to switch between worldbuider and game, you use your memory better (nearly 1 GB saved). Mapmaking speed increased. :cool:


Next, Modmaking stuff. Same situation. When time comes for coding, then error-finding and bug-fixing... Ah, speechless... :(
If I was VG's main engine designer, I'd implement this system for modding:
1. As usual, you run the game.
2. Select "MOD SDK" menu.
3. Load your work, or create new.
4. Codding...
OK, time to compile... I'd add two versions of compiling: compile to hard disk and compile to memory. When you compile to memory, modding program applies changes only to game's memory and doesn't touch hard disk version. Hard disk compile works vice versa: applies changes only to hard disk and doesn't touch memory. This gives you very useful advantages. You compile to memory last changes, if they work properly, you compile to hard disk and always have WORKING BACK-UP. Let's look at very familiar situation. You made some changes to code, unfortunately, it doesn't work. Usually, finding errors is very long and tiring process. If you didn't fix error in 5 minutes it means that you will look for it very long time. You compiled to memory, and have working back-up on hard disk (why would you compile to HDD not working one?), so you can use handy function called "Reload MOD from hard disk". In ~70% it is faster to remake than search error. Sometimes changes to code cause crashes, in this case game should have back-up mechanism, it should compile mod to HDD to another directory, called like mod's directory but with "_CRASHED" added to the end. If you know, what caused crash, you can reload "_CRASHED" version and fix the problem. You still got your working version on HDD. :cool:


I didn't write about misc improvements, too much text...

Thank you for reading!

Positive Effects:
- game becomes all-in;
- to install Worldbuilder or MOD SDK, download it and copy to game directory (or run install, which makes this instead of you, doesn't matter);
- decreased percent of routine in mapmaking and modding, hence, increased speed of these processes.


Negative Effect:
It's pretty hard to implement and code... BUT! It's done only once. We, programmers, make life easier through hard work. Command and Conquer deserves this!

Plrsvek
07-26-2011, 02:56 PM
Sounds like a good idea, you got my vote

LukaColic0
07-26-2011, 03:11 PM
My vote is all yours.I think if a gamer buys a disc copy the Wourld Builder and Mod SDK is a option in the install or a another install but my point is that the Mod SDK and WB will be on the disc.

methuselah
07-26-2011, 03:47 PM
Voted yes. The mapping and modding community, if you provide them the tools they need to they need to do their thing, plays a role in keeping games vibrant and alive. Not everyone will try a mod and that is understandable but a lot of people swear by them and pretty much everyone will try out a well designed map.

Big yes from me!

Lauren
07-26-2011, 07:12 PM
Big no from me.

WorldBuilder: maybe yes. But as you also can make modmaps it is just easier to code and compile out of game.
Also there is no problem running the WorldBuilder and game at once. Just change stuff with WB, alt tab, test it.

So now my big no: NEVER make the mod sdk part of the game. Especially if you aren't a beginner you don't want to code while ingame. You want a familiar surrounding like Notepad++ or even Visual Studio. You want some special text highlighting, intellisense or whatnot. You don't want to do that in a GAME. When I work on a mod I have 4+ folders open and several files loaded in my editor. Especially schema files/folder and other help files.
Do that when most of the interface is as responsive as in SAGE or other games... there is a reason why Windows doesn't look like a game.

Also the compile to memory is in my opinion complete bs. If you want a backup, create one. Just copy your files. If you get more experienced you wont do any of these errors taking long to find. The compiler gives you enough information on why an error in compilation happened. To fix that it takes about 10 seconds. To fix a crash of the game, usually max 1 minute. Also if your game crashes all your memory files go to nirvana.
"In ~70% it is faster to remake than search error. " <- That is just not true as explained above.
If you really develop a mod you don't want your game an all in one thing. There are much better tools for everything out there that have proven themselves then any ingame support can be.

Golan2781
07-26-2011, 08:11 PM
Kinda have to agree with Lauren on this one - the advantages and scope of the changes suggested is minimal, while the impact is severe. Such a framework takes a lot of the freedom out of a modder's hands and adds only little to it. Having an external mod suite allows personal workflow adjustments to your own needs, be it using a different editor, batch code creation or a user created UI editor.
Plus, every feature you add to the game weights it down. Part of what made TW superior to Gens technically was its superior data management, resulting in much faster loading times. In the end, this also helps modding, as you can test changes much quicker (yes, even with compiling). Similar to how you don't want the game routines to be ran while fiddling with pure code, players wouldn't want the SDK management to be handled by the game while they are playing. Interlocking the two also requires synchronizing patches and the like and further reduces the possibilities for modifications to the SDK.

The WB might do well if it simply had a "run this map" option, similar to many racing game editors. Instead of requiring the huge system waste of running the entire game and editor, it simply has a minimalistic game module that simulates merely the actual gameplay (instead of the entire overhead).

Bibber
07-26-2011, 08:46 PM
Agreed with Lauren and Golan. The Mod SDK was quite good when worked with some time. Just slightly improvements had to be made. And with batch files it was highly customizable. Dunno what others want to be better on that. Oo

@ WimeSTone:
From your post I know you have no idea what you're talking about.

WimeSTone
07-26-2011, 08:47 PM
Thank you for constructive criticism.
"Also there is no problem running the WorldBuilder and game at once." - I'll say again, loading same stuff twice is memorywasting. If you run them both, then WB should request stuff's [segment : offset] and work as usual.

OK, familiar surrounding is good, everybody uses what he/she likes. I agree, that using PS for textures, 3dsmax for models, etc. is better. BUT, there were no powerful SDK from developers. It must be KIT, not just exe or bat for compiling and game files. Citation from DirectX SDK "It includes runtimes, headers and libraries, samples, documentation, utilities, and support for..."

Why don't you use Intel 80486SL? It's a good processor, by the way.
If we would only sit and enjoy what we have, we'd stay in Stone Age, honestly...

Golan2781
07-26-2011, 08:53 PM
If we would only sit and enjoy what we have, we'd stay in Stone Age, honestly...Your suggestions aren't improvements, merely changes with the potential of being changes for the worse.

The scope of the SDK is limited by the game's data pipeline. The TW and RA3 SDKs offered almost everything that was viable. Yes, improvements to the usability would have been nice, but most complaints are of the type "I've never started a computer, how can I build a quantum computer with a box of scrap?".

WimeSTone
07-26-2011, 08:55 PM
OK, let's put my suggestions off, doesn't matter... What would you suggest?

Bibber
07-26-2011, 08:55 PM
Citation from DirectX SDK "It includes runtimes, headers and libraries, samples, documentation, utilities, and support for..."
Dude, the TW SDK is a kit.
It contains:
- compiler and libraries for compiling xml files
- schema files (the most important part)
- documentation
- 3ds max plugins
- samples
- utilities (W3X Viewer)
- almost all xml sources

So, what is your problem?

Lauren
07-26-2011, 09:01 PM
Dude, the TW SDK is a kit.
It contains:
- compiler and libraries for compiling xml files
- schema files (the most important part)
- documentation
- 3ds max plugins
- samples
- utilities (W3X Viewer)
- almost all xml sources

So, what is your problem?

+1

@WimeSTone
If something had to be changed it would be the ability to put in even more customization and less usage of stuff EA can't provide us tools for like the Apt stuff. Can only point to this (http://www.commandandconquer.com/forums/showthread.php?1746-Mod-capabilities) for that matter.

Golan2781
07-26-2011, 09:04 PM
OK, let's put my suggestions off, doesn't matter... What would you suggest?A better tutorial and sample mod.
Multiple tutorials detailing

Setup of a basic mod
Editing of special assets
The scope of the format used (Compiler (http://www.thundermods.net/index.php?page=content&id=89)based (http://www.thundermods.net/index.php?page=content&id=90)XML (http://www.thundermods.net/index.php?page=content&id=91)etc.)

Better commented source code and tools. (batch is easy as hell but most don't even bother with the power of the buildmod.bats or what they actually are.)
Better documentation for data/pipelines etc. not covered by the SDK (apt etc.).


Oh, and a community not crying "uh, not what I know. Don't want, don't care". The TW and RA3 SDKs were vastly superior to everything officially available for earlier games.

WimeSTone
07-26-2011, 09:06 PM
OK, fine. Let's stop this discussion. You persuaded me... But, nevertheless, I'd add some kind of scripting (LUA or other), which would allow us to interact more with engine, add new mechanics etc. I'm talking not about WB scripts.

Golan2781
07-26-2011, 09:12 PM
Indeed, though the LUA implemented since TW allows for quite some extension of the basic functionality it is very limited compared to engines built for proper code injection, like SupCom.

Lauren
07-26-2011, 09:12 PM
OK, fine. Let's stop this discussion. You persuaded me... But, nevertheless, I'd add some kind of scripting (LUA or other), which would allow us to interact more with engine, add new mechanics etc. I'm talking not about WB scripts.
Already there.
data/scripts/scripts.lua
data/scripts/scriptevents.xml

Madin
07-26-2011, 09:27 PM
Wow! EA's loyal defence triumvirate post one after another, it's a minor conspiracy!

WimeSTone
07-26-2011, 09:41 PM
"The TW and RA3 SDKs were vastly superior to everything officially available for earlier games."
And then EA decided not to do SDK for CnC4. Permanent online connection is not a problem, solution always can be found. They even stopped patch support it, there are still many bugs in CnC4... Would you be so kind and explain me why they did so?

Bibber
07-26-2011, 09:54 PM
Yeah! I am EA's most loyal defender! *runs away*

Lauren
07-26-2011, 09:55 PM
Wow! EA's loyal defence triumvirate post one after another, it's a minor conspiracy!
oO we were just stating some facts here. It has nothing to do if we think EA is great or EA sucks.

"The TW and RA3 SDKs were vastly superior to everything officially available for earlier games."
And then EA decided not to do SDK for CnC4. Permanent online connection is not a problem, solution always can be found. They even stopped patch support it, there are still many bugs in CnC4... Would you be so kind and explain me why they did so?
Because it wasn't well received and they fired 90% of their staff? Why do you think we would know anything else but these well known facts? They also didn't bring one for KW or Uprising, who knows why. It is just a fact that TW and RA3 SDKs were better then anything from EA before that.

Golan2781
07-27-2011, 01:39 PM
"The TW and RA3 SDKs were vastly superior to everything officially available for earlier games."
And then EA decided not to do SDK for CnC4. Permanent online connection is not a problem, solution always can be found. They even stopped patch support it, there are still many bugs in CnC4... Would you be so kind and explain me why they did so?Would you be so kind as to tell me how I should know this?

It might have something to do with the things Lauren stated, though.

Splat
07-27-2011, 10:56 PM
Definate aggreement with you about the worldbuilder in game button to help speed the processs.

madiba127
07-27-2011, 11:45 PM
it is easier not to have the SDK integrated into the game, reason is simple bug testing


When you compile to memory, modding program applies changes only to game's memory and doesn't touch hard disk version
this does not help at all as Modding is about the hard coded stuff and nothing to do with memory

any changes you do when making a mod may cause the game to crash, modding the games, well at least TW is not that hard the only difficult part is getting your head around all the things you can do with it, basically ea has given you the whole game to mod with the exception of the TW/RA3 SAGE engine

i can see where you are trying to point out but most of your ideas are just impractical of useless to the game modder, Modding is not just about codding, there are effects, models, shaders, sound and more,
the big problem i have with your post, sorry is that to me you sound like you have never modded either of the two games

however about the idea with the worldbuilder is that whats the point of this, yes it may be useful but the worldbuilder is like a live preview with the exception of the actual movement of the objects
adding the worldbuilder to the game is silly and would be better to simply have a command in worldbuilder to open the map in game with one player just to test it

phoenixcrap
07-28-2011, 05:17 PM
ok i agree with worldbuilder to a point and i totally disagree with mod making. making a map should be an easy process of setting up terrain and units, getting them to do what they have to and saving it for a test. that can be done in game.
the extent of modmaking though, good mods change alot of stuff and if you get it wrong and the program crashes you have to restore it or do some dance til the dang thing works again. I LOVE MODS. but if the only available editor is in game and you stuff something up where do you go from there?
i love code blocks, visual studio notepad++ and all the other programs that help coding c++. its great to be able to run something in one place and not have to transfer back and forth when something goes wrong.