Once and for all: should there be Events in Civ3?

Events for Civ3?

  • Yes.

    Votes: 65 65.7%
  • Yes if it doesn't affect the price too much.

    Votes: 10 10.1%
  • No.

    Votes: 12 12.1%
  • I have no clue what events are.

    Votes: 12 12.1%

  • Total voters
    99

yoshi

Emperor
Joined
Oct 2, 2002
Messages
1,179
I think it's about time we got this straight. It's an issue that is really relevant to strategy games (TBS and RTS in particular).

Part of the reason why many civers are still stuck on Civ2 is because it has a scripting language (primitive though it may be). (The other reason the issues around Civ3’s performance but we all know about that. ;) )

Most strategy games have some sort of scripting language (two prominent RTS games that include events are 'Age of Empires II: Age of Kings' and the great 'Starcraft').
(See the Editors of other games and even the Civ2:MGE Editor for examples of MODdable scripting –see Macro.txt in in the Civ2 directory.)

It seems to me that Civ3 would benefit more from the inclusion of Events than any other game presently on the market.

With Conquests, Atari has shown an interest in scenario development. The only thing lacking is scripting which serves to enhance the scenario experience ten-fold.
(Well, actually there are other things lacking but I won’t get into that now.)

So, the question is: do you want to see Atari include a scripting language into its next Civ3 expansion?
 
Hmmm, I think they'd be swell for the scenarios, but how would they be used for the regular game? Would they be used at all? I always thought random disasters would be kind of nice.
 
Scenarios aren't on my list of priorities. I think that means "no", as it would detract from other efforts.
 
Civ4 perhaps, I think it's too late for this to be added to III.
 
Fully evented scenarios would be like movies:D
Really, it would be nice
 
Good idea!

A great thing for Civ 4! Perhaps it is too late to add it to Civ 3 right now...

... they still have to fix some other things before.


Ceterum censeo CORRUPTION esse delendam! :rolleyes:
 
Great idea, but it's probably way too late for Firaxis to spend the kind of money it would take for Civ3. It should be designed in for Civ4.
 
The main reason I didn't buy Civ3 is because it doesn't have a scripting language. And I'm not holding my breath about Civ4:

"I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis
 
PeteT, where did you get that quote? I thought the reason was budget limitations. How can you get bugs from prewritten script parameters –unless the scripting language itself already has a bug from release? I don’t understand what Mike is referring to in that quote.

Originally posted by Dale Swanson:
…but how would they be used for the regular game?
Aside from creating random disasters, there are other possible applications to the vanilla game (it wouldn’t really be the ‘vanilla’ game unless designers actually included some of the events into the newly released version). If designers were to apply events to the vanilla game, the available conditions in the new scripting language would have to be far more elaborate than those of Civ2’s macro.

The main limitation is that the vanilla game is that even if you play on a pre-made map with pre-set player starting locations, the events still can’t account for new cities/names, etc. And if everything is random then none of your events can include locations –since they do not match the map or the PSLs.

A scripting feature that would have to be toyed with is situation-based wildcards (I made that up so don’t quote me on it), which are random events within very generalized parameters (e.g. If x civ is declared war on by any civ while under x govt. then create x # of units --x unit if tech a; x unit if tech b…etc.-- in capital city –the wildcard being the capital city which could have any name, which is identified by the presence of the Palace improvement, and be at any coordinates).

Disasters are a bit more complicated because they involve variable terrain. For instance, if you want cities built near mountains to be prone to earthquakes (effect is the destruction of improvements) it might be something like this: If city built within x squares of Mountain terrain then x chance of deletion of any city improvement or loss of citizens and text: “Earthquake near STRING! STRING destroyed or x # of citizens killed”). The thing is, disasters could be hard-coded events (like the appearance of Barbarians) –so, no player scripting needed (at least where the vanilla game is concerned).

The main reason why events are limited to scenarios is because scenarios are usually pre-set so there isn’t a need for as many wildcard conditions. The other reason is that events are mainly meant to beef up the game in order to make the scenario play out in a manner appropriate to the scenario’s subject. Doing this in the vanilla game would be pretty pointless because although the units, techs, etc. are historically-based, the game itself is quite random and plays out differently each time.
The only application I can think of is perhaps very generally including the Barbarian invasions that took place all across northern Asia/Europe during the beginning of the 1st millennium A.D. (e.g. repeated creation of x # of Barbarian units at random locations near northern borders of any civs that discover x Ancient/Medieval techs under x govts for x # of turns).

I see that the issue of whether or not events are applied to the vanilla game is a key factor in this. If Firaxis is willing to invest in the inclusion of player scripting into Civ3, then they would definitely have to take this factor well into account.

About the budget problems associated with including events:
I agree with Warpstorm that Firaxis would probably be unable to afford such a massive addition. But it seems to me that since nobody I have spoken to thus far really knows exactly how difficult it would be to adapt an already existing scripting program to the Civ3 source code (assuming a scripting language wouldn’t just be created from scratch), it doesn’t hurt to ask for events. And if they don’t include events into a future Civ3 expansion, have fun waiting for Civ4 (which may or may not include events –assuming it even gets developed). Cheers. :D ;)
 
Originally posted by yoshi
How can you get bugs from prewritten script parameters –unless the scripting language itself already has a bug from release? I don’t understand what Mike is referring to in that quote.

Beer was refering to the whole new class of bugs that allowing scripting will introduce. This class is the modder not knowing how to use the language or routines and cranking out lots of bug reports that "this code doesn't work right" when, in fact, it is their own fault for not understanding how to program.
 
I really want events, mainly because by mid-late game, the game is already won. Here's one idea I had: Late game, say near the end of the modern era, an invasion by alien beings occurs. I know it sounds corny, but let's just say that the units they send are much better than your own, that they never make peace, and that they are such a threat that all wars between Civs stop to fight the invasion. I think that would create an exciting, tough, desperate but fun situation. Basically, we need events to make the late game less predictable.
 
yoshi,

The quote is from a Poly chat that occured just after Civ3 was released.

I don't think that budget limitations had anything to do with Civ3's lack of a scripting language. As I understand it, if you want to put in a scripting language you really want to start at the beginning of your project. It's a lot of work and is not something you can easily add on. So if it ever happens, it won't happen until Civ4.

To see what such a language could be like, here's an example of some BHS script from a tutorial in Brian Reynolds' Rise of Nations. 'Big Huge Script' is the name of the scripting language that was provided for RoN.

Code:
trigger Bonus (sound_finished ()) {
         set_timer ("Help", 4);
         Legions = create_unit (COMPUTER, BONUS_LEGIONS_X, 

 BONUS_LEGIONS_Y, "Legions", 1);
         unit_attack_order(COMPUTER, Legions, HUMAN, BRITON_ID);
	   zoom_in_on(HUMAN, BRITON_ID);
         enable_trigger ("Help_out");
         enable_trigger ("The_end");
  }

  trigger Help_out (timer_expired ("Help")) {
         /***WAV: The vile Romans have launched a sneak attack against Briton!
 We must come to her aid.***/
	 center_camera_on(HUMAN, find_military(HUMAN) );
	 add_objective("Briton is under attack! Right-click to move your troops to 
defend the city!", "sneak_attack", "sneakattack.wav");
	 play_objective_sound("sneak_attack");
       enable_trigger ("Reinforce");
	 enable_trigger("Deselect_army");
  }

  trigger Reinforce (num_military_units (HUMAN) < 1) {
         create_unit (HUMAN, ARMY_CREATE_X, ARMY_CREATE_Y, "Hoplites", 7);
         for (i = 0; i < num_military_units (HUMAN); i++) {
              ID = find_military (HUMAN);
              unit_attack_to_order (HUMAN, ID, ATTACK_TO_X, ATTACK_TO_Y);
         }
  }

  trigger The_end (num_military_units (COMPUTER) < 1) {
         objective_complete("sneak_attack");
	 play_sound ("victory.wav");
	 /***WAV: Congratulations! You have fended off the evil Romans***/
         enable_trigger("The_real_end");
  }

There are other ways of doing it but it's the C-like syntax here that makes the language interesting.
 
Time to be Naive: What is an "Event"? I am not a programmer, so I don't have much of an Idea. I think it may have something to with changing the code so that you can make historical events happen, maybe? I am not sure.
 
An "event" is just that -- it's something happening. With events and a scripting language, you could create a scenario where, if you do something in particular, it will "trigger" a civil war, and you'll lose half your cities to a new civ and immediately go to war with them. (That seems like a pretty good example to me.)

Not much use in the Epic game, but will expand the scenario possibilities by at least tenfold.
 
SWEET!!! Thanks for the speedy reply Vancouver2010. YES, definitely put these in. I love the example, it was EXACTLY what I was thinking about. Firaxis, PLEASE, PLEASE, PLEASE put these in, it make make Civ a LOT more fun!!!
 
Top Bottom