Announcement

Collapse
No announcement yet.

DESIGN: Wonders

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    hey thats a good idea, the London Exchange (which we might like to rename to Stock Exchange) is balanced and works out to about the same benefit after a while. Although it might be a more useful wonder to add to older buildings (i.e. for Internet adding to Universities like it did in its very beginnings).

    Comment


    • #17
      Originally posted by LemurMadness
      The Ramayana should be +2, I agree with that, but I'd say Wonders should keep an specific bonus, like the original CTP2 does. Obsoleting Wonders, well, CTP1 did had wonder obsoletion, CTP2 doesn't? Can Wonders be obsoleted throught a period of time, instead of advances?
      not sure how to set it to an age, but you can make obsolete with multiple advances. first one will obsolete it

      Sounds more reasonable, like the bonus of Advance Reached (Concrete +5%) / # of Buildings Constructed of Same Type (Theaters).
      if i understand you right i already did this code. you can set a flag that says you need X number of Building Y before you can build a wonder (or building)



      The "Building Everywhere", didn't worked properly last time I checked (Yeah it was about 200 builds ago), and it doesn't seems ok for Civilizations with few cities with high population, so I agree with the "Double Effectiveness of X Buildings".
      i'll look into the actual building code today (hopefully)

      as far as a flag should we rename BuidingEverywhere to BuildingEffectEverywhere? then I'd re do the code to BuildingEverywhere to actually make abuilduing Everywhere
      Formerly known as "E" on Apolyton

      See me at Civfanatics.com

      Comment


      • #18
        Originally posted by LemurMadness

        Obsoleting Wonders, well, CTP1 did had wonder obsoletion, CTP2 doesn't?
        CtP2 has some wonders obsoleted, but ones that aren't ever obsoleted (or obsoleted for a long time) risk being too powerful.

        Can Wonders be obsoleted throught a period of time, instead of advances? Sounds more reasonable, like the bonus of Advance Reached (Concrete +5%) / # of Buildings Constructed of Same Type (Theaters).
        I guess thats a good idea aswell, but advance obsoleting is fairly consistant anyway. Plus there's a reason for it to be obsoleting at a significant advance in the same field, it adds more flavour than obsoleting at the same turns every game.

        i'll look into the actual building code today (hopefully)

        as far as a flag should we rename BuidingEverywhere to BuildingEffectEverywhere? then I'd re do the code to BuildingEverywhere to actually make abuilduing Everywhere
        It's needless work at the moment IMO, but it's up to you
        Call to Power 2: Apolyton Edition - download the latest version (12th June 2011)
        CtP2 AE Wiki & Modding Reference
        One way to compile the CtP2 Source Code.

        Comment


        • #19
          I checked the code. Not in 632 but in 707 and later there is this code:
          Code:
          	sint32 buildingIndex;
          	if(wrec->GetBuildingEverywhereIndex(buildingIndex)) {
          		m_wonderBuildings |= ((uint64)1 << buildingIndex);
          	}
          //EMOD to actually create the wonder building
          
          	sint32 abuildingIndex;
          	if(wrec->GetActualBuildingEverywhereIndex(abuildingIndex)) {
          		for(i = 0; i < m_all_cities->Num(); i++) {
          			if (!m_all_cities->Access(i).GetData()->GetCityData()->HaveImprovement(abuildingIndex)) {
          				m_all_cities->Access(i).GetData()->GetCityData()->AddImprovement(abuildingIndex);
          			}
          		}
          	}
          //end EMOD

          So Maq if you are up for it could you test this?

          To do so change the wonder that has the 'BuildingEverywhere' and change the flag to
          'ActualBuildingEverywhere' just add Actual in front of it.

          If it works I think we should make that a standard change in Wonders.txt since people always ask about that.

          if it doesn't work I think I know where I need to fix it. thanks
          Formerly known as "E" on Apolyton

          See me at Civfanatics.com

          Comment


          • #20
            OK I just tested it. I Added Hagia Sofia with the scenario editior and it added the Shrine. Then I removed Hagia Sofia with scenario editor and it left the Shrine. So i think it works fine.
            Call to Power 2: Apolyton Edition - download the latest version (12th June 2011)
            CtP2 AE Wiki & Modding Reference
            One way to compile the CtP2 Source Code.

            Comment


            • #21


              I love it when code works

              so should we make it a permanent change?
              Formerly known as "E" on Apolyton

              See me at Civfanatics.com

              Comment


              • #22
                We may aswell. That's how it should work.

                First we need to conclude any changes in the wonder thread, then I'll attach a wonders.txt with all the changes in it.

                edit: forgot this IS the wonder thread
                Call to Power 2: Apolyton Edition - download the latest version (12th June 2011)
                CtP2 AE Wiki & Modding Reference
                One way to compile the CtP2 Source Code.

                Comment


                • #23
                  OK to try and wrap up some changes, so we can add it and start testing:

                  Overpowered:
                  ==============

                  Aristotle's Lyceum - doesn't obsolete, +20% science for rest of game.

                  Solution - +10% science, obsolete at Classical Education.

                  Central Matter Decompiler - "building everywhere" overpowered. Matter Decompilers are already an excellent building (-50% production pollution). They effectively allow you to increase your production with much lower pollution costs, that everyone else is struggling with.

                  Solution - any ideas? (that don't involve weakening Matter Decompilers)

                  Chichen Itza - doesn't obsolete, -30% crime for rest of game.

                  Solution - obsolete at Theology (divine law).

                  Field Dynamics Lab - doesn't obsolete, +35% science for rest of game.

                  Solution - +10% science. This is still a lot but it's nearer the end of the game.

                  Genome Project - doesn't obsolete, +10% prod., +10% health (+1HP) for units.

                  Solution - only +10% Health.

                  Globe Sat - worldwide radar coverage, speaks for itself...

                  Solution - This HAS to be a wonder everyone can build? It's too good for one civ to have alone. Seems like a good solution and keeps the wonder unchanged.

                  Gutenberg's Bible - doesn't obsolete, +2 happiness forever, eliminates conversion.

                  Solution - only give "Eliminates conversion", still very useful in the right circumstances.

                  Zero Crime Bill - doesn't obsolete, -60% crime for rest of game.

                  Solution - -30% crime, obsolete at Neural Reprogramming

                  Internet - "building everywhere" overpowered. Effectively +20% science (Computer Center) for rest of game.

                  Solution - +20% science, obsolete at Space Flight(Orbital Laboratories)?

                  Ramayana - +3 happiness for rest of game? yeah that's overpowered alright.

                  Solution - +1 happiness, obsolete Age of Reason, needs to obsolete quite early.


                  Underpowered:
                  ===============

                  Pyramids - +100 gold per turn to the civ that builds it. It doesn't obsolete, but that's underpowered still, considering it costs the same as Ramayana. Over 500 turns thats only 50,000 gold.

                  Solution - maybe +300 gold? We should keep it similar to the original. Should it obsolete?
                  Call to Power 2: Apolyton Edition - download the latest version (12th June 2011)
                  CtP2 AE Wiki & Modding Reference
                  One way to compile the CtP2 Source Code.

                  Comment


                  • #24
                    Globesat may take some work

                    Code:
                    in player.cpp
                    		if(wrec->GetGlobalRadar()) {
                    			g_player[wowner]->m_hasGlobalRadar = FALSE;
                    			g_theWonderTracker->SetGlobeSatFlags(g_theWonderTracker->GlobeSatFlags() & ~(1 << m_owner));
                    			m_vision->ClearUnseen();
                    			if(wowner == g_selected_item->GetVisiblePlayer()) {
                    				g_director->AddCopyVision();
                    			}
                    		}
                    the wondertracker line is a problem
                    Formerly known as "E" on Apolyton

                    See me at Civfanatics.com

                    Comment


                    • #25
                      Maybe the central matter decompiler could reduce production and/or upkeep costs? That would give the builder the same pollution cutting benefits but make it easier to get them.

                      Comment


                      • #26
                        Globesat may take some work
                        I'll leave it with you for now then E. For now I'll double the cost of the wonder.

                        Maybe the central matter decompiler could reduce production and/or upkeep costs? That would give the builder the same pollution cutting benefits but make it easier to get them.
                        It's not very similar to the original wonder though. cutting production is a lot worse than reducing the pollution caused, and I don't know if we can reduce upkeep costs yet, but that would be a good effect to have for another wonder. Ideally the CMD would just be -25% production pollution (or something) to one civ, and you can build Matter Decompilers aswell.
                        Call to Power 2: Apolyton Edition - download the latest version (12th June 2011)
                        CtP2 AE Wiki & Modding Reference
                        One way to compile the CtP2 Source Code.

                        Comment


                        • #27
                          I thought this would be a good time to post what the database for wonders looks like. FU - means futureUse (not implemented) though I may have implemented it.

                          Any qustions just ask!

                          Code:
                          #-----------------------------------------------------------------------------
                          #
                          #  Project      : Call To Power 2
                          #  File type    : dbgen input
                          #  Description  : Wonder type descriptor
                          # 
                          # ----------------------------------------------------------------------------
                          # 
                          #  Disclaimer
                          # 
                          #  THIS FILE IS NOT GENERATED OR SUPPORTED BY ACTIVISION.
                          # 
                          #  This material has been developed at apolyton.net by the Apolyton CtP2 
                          #  Source Code Project. Contact the authors at [email]ctp2source@apolyton.net[/email].
                          # 
                          #-----------------------------------------------------------------------------
                          # 
                          #  Modifications from the original Activision code:
                          #
                          #  - FU: designates Future Use / To Be Implemented / not coded yet
                          #  - Governmenttype //added by E limiting wonders to certain governments
                          #  - CultureOnly //added by E -- can only build wonders if civ has certain citystyle
                          #  - CityStyleOnly //added by E -- can only build wonders at cities with certain citystyle 
                          #  - PrerequisiteBuilding  // Added by E to limit wonders to cities with certain buildings
                          #  - EnablesGood //added by E allows a wonder to give a city a good 
                          #  - NeedsCityGood - requires a good to build wonder
                          #  - NeedsCityGoodAll - requires a 1 or more good to build wonder
                          #  - NeedsCityGoodAnyCity - requires any city to have good to build wonder
                          #  - EnablesPunativeAirstrikes //added by E(1-14-2006) allows airstrikes without war
                          #  - Added OnePerCiv for Small Wonders
                          #  - ObsoleteGovernmenttype //added by E obsoletes wonders only if player switches to govt
                          #  - Added BuildingEffectEverywhere to better flag than BuildingEverywhere based on code
                          #  - ActualBuildingEverywhere was added and implemented a long time ago
                          # 
                          #-----------------------------------------------------------------------------
                          
                          WonderMovie : File
                          
                          Wonder {
                          	Int ProductionCost
                          	Record Icon DefaultIcon
                          	Record WonderMovie Movie
                          	StringId Description
                          	Record Advance EnableAdvance
                          	Record Advance [0..5] ObsoleteAdvance
                          	Record Building[] PrerequisiteBuilding		// Added by E to limit wonders to cities with certain buildings
                          	Record Government[] GovernmentsModified		// Added by MrBaggins
                          	Record CityStyle[] CultureOnly				//added by E -- can only build wonders if civ has certain citystyle
                          	Record Government[] GovernmentType			//added by E --- a copy of unit Government type code
                          	Record Government[] ObsoleteGovernmentType	//added by E --- switching to this obsoletes your imp
                          	Record CityStyle[] CityStyleOnly			//added by E--can only build wonders at cities with certain citystyle 
                          	Record Resource[] NeedsCityGood				// must have good in radius of city or buying resource to build 
                          	Record Resource[] NeedsCityGoodAll			//a city must have all resource to build wonder
                          	Record Resource[] NeedsCityGoodAnyCity		//
                              Record Resource[] EnablesGood				//added by E -- having a TI gives a city a good
                          	Record TerrainImprovement[] ShowOnMap		//
                          	Record TerrainImprovement[] ShowOnMapRadius //
                          	Record Civilisation[] CivilisationOnly 
                          	Record Feat[] NeedsFeatToBuild				// implemented by E
                          	Bit(Record MapIcon)   ShowCityIcon			// Like show on map but put on city?
                          
                          	Bit(Int) SquaredBorderRadius 				//added by E
                          	Bit(Int) IntBorderRadius    				//added by E
                          	Bit		 OnePerCiv							//EMOD implement 5-12-2006
                          	Bit(Record MapIcon)			IsReligionIcon	// Displays city religion icon - can be used for Holy Cities
                          	
                          	# Flags
                          	Bit(Int) ReduceReadinessCost
                          	Bit EmbassiesEverywhere
                          	Bit(Int) DecCrimePercent
                          	Bit(Int) IncKnowledgePercent
                          	Bit(Int) DecEmpireSize
                          	Bit(Int) IncHappinessEmpire
                          	Bit CloseEmbassies
                          	Bit ReformCities
                          	Bit FreeSlaves
                          	Bit(Int) IncConvertedCitiesFeePercent
                          	Bit(Int) GoldPerWaterTradeRoute
                          	Bit(Int) GoldPerTelevision
                          	Bit GlobalRadar
                          	Bit SpiesEverywhere
                          	Bit(Int) GoldPerInternationalTradeRoute
                          	Bit ProtectFromBiologicalWarfare
                          	Bit(Int) PollutersToParks
                          	Bit EnableParkRangers
                          	Bit(Int) ReduceWorldPollution
                          	Bit AllCitizensContent
                          	Bit EliminateNukes
                          	Bit AllBoatsDeepWater
                          	Bit(Int) IncreaseBoatMovement
                          	Bit FreeTradeRoutes
                          	Bit(Int) DecreaseMaintenance
                          	Bit(Int) RandomAdvanceChance
                          	Bit(Int) IncreaseHp
                          	Bit(Int) MultiplyTradeRoutes
                          	Bit ForcefieldEverywhere
                          	Bit(Int) IncreaseScientists
                          	Bit(Int) OtherCivRandomAdvanceChance
                          	Bit(Int) IncreaseProduction
                          	Bit(Int) BonusGold
                          	Bit CantBuildInSea							// Added by E to restrict some wonders to Land
                          	Bit CantBuildOnLand							//  Added by E to restrict some wonders to Sea				
                          	Bit CoastalBuilding 						// Added by E to restrict some wonders to the Coast
                          	Bit EnablesPunativeAirstrikes				// Added by E Air Bombard without War 
                          
                          	Bit(Int) IncreaseFoodAllCities
                          	Bit(Int) TemporaryFullHappiness
                          	Bit RevoltingCitiesJoinPlayer
                          	Bit NoPollutionUnhappiness
                          	Bit EmbassiesEverywhereEvenAtWar
                          	Bit(Int) IncreaseSpecialists
                          	Bit(Int) IncreaseCathedrals
                          	Bit(Int) IncreaseBrokerages
                          	Bit(Int) IncreaseRegard
                          	Bit PreventConversion
                          	Bit ProtectFromBarbarians
                          	Bit StartGaiaController
                          	Bit GLHidden
                          
                          	Struct BuildingFeat {						// From feats implemented by E 2-24-2006
                          		Record Building Building
                          		Bit(Int) Num
                          		Bit(Int) PercentCities
                          	}
                          
                          	Bit(struct BuildingFeat) BuildingFeat		// From feats implemented by E 2-24-2006
                          
                              Struct BuildingGold {
                                  	Record Building Building
                                  	Bit(Int) Gold 
                              	}
                          
                              Bit(struct BuildingGold) BuildingGold
                          	Bit(Record Building) BuildingEverywhere
                          	Bit(Record Building) ActualBuildingEverywhere
                          	Bit(Record Building) BuildingEffectEverywhere  #This would be a better name for BuildingEverywhere
                          	Bit(Record Building) ConflictsWithBuilding
                          
                          	##Bit(Record Building) BuildingAnywhere
                          	Record Building[] BuildingAnywhere
                          	Bit(Int) GoldPerBuildingAnywhere 
                          
                          	Bit(Float) PollutionPercent
                          	Bit(Float) PollutionAmount
                          
                          	Record Building[]    ExcludedByBuilding 
                          	Record Wonder[]      ExcludedByWonder 
                          
                          		#Energy Code
                          	Bit(Int)   EnergyHunger 
                          	Bit(Int)   ProducesEnergy
                          	Bit(Int)   EnergyHungerPerPop
                          	Bit(Int)   ProducesEnergyPerPop 
                          }
                          Formerly known as "E" on Apolyton

                          See me at Civfanatics.com

                          Comment


                          • #28
                            Originally posted by Maquiladora
                            It's not very similar to the original wonder though. cutting production is a lot worse than reducing the pollution caused, and I don't know if we can reduce upkeep costs yet, but that would be a good effect to have for another wonder. Ideally the CMD would just be -25% production pollution (or something) to one civ, and you can build Matter Decompilers aswell.
                            Sorry, what I should have said is that it reduces the production (and upkeep) costs of ordinary Matter Decompilers (it should probably also act as an ordinary Decompiler in the building city). I'm not sure whether that's actually doable at present.

                            Another option would be for it to upgrade the effectiveness of all other Decompilers by a small amount. May also need code work to implement, though.

                            Comment


                            • #29
                              Originally posted by cap601

                              Sorry, what I should have said is that it reduces the production (and upkeep) costs of ordinary Matter Decompilers (it should probably also act as an ordinary Decompiler in the building city). I'm not sure whether that's actually doable at present.

                              Another option would be for it to upgrade the effectiveness of all other Decompilers by a small amount. May also need code work to implement, though.
                              If a wonder (or anything really, like Goods - coal increasing power plant production etc) could alter the effects of existing buildings that would be perfect aswell
                              Call to Power 2: Apolyton Edition - download the latest version (12th June 2011)
                              CtP2 AE Wiki & Modding Reference
                              One way to compile the CtP2 Source Code.

                              Comment


                              • #30
                                you mean a modifier that would tac on an additional percent?

                                i'll have to think on that i think the code would a little difficult because it takes from the building_util file into citydata processproduction method. the modifier doesn't allow for another plus based solely on the building type (just all buildings based on if they have a production boost)

                                I may have to think about it


                                On another note I coded a const.txt option MAX_CITY_WONDERS but have yet to test it
                                Formerly known as "E" on Apolyton

                                See me at Civfanatics.com

                                Comment

                                Working...
                                X