| layout | title |
|---|---|
default |
Features Extracted from Continent Project |
This document lists all features identified in the Continent codebase that are being refactored into the Renaissance project.
- Construction & Building System
- Production System
- Military System
- Diplomacy System
- Guild System
- Exploration System
- Research System
- Feudalism & Vassalage
- Events & Random Events
- Map & Territory Management
- Trade & Economy
- Naval System
- Heroes System
- Swag System
- Pacts & Treaties
- Infrastructure & Utilities
-
Building Construction: Players can construct various buildings (castles, farms, mines, forges, etc.)
Continent/Construction.bas-processBuildTask()functionContinent/cntSRV.frm- Main server loop calling construction tasks
-
Building Upgrades: Buildings can be upgraded to higher levels
Continent/Construction.bas- Building upgrade logic inprocessBuildTask()
-
Construction Progress: Buildings are constructed over time with progress tracking
Continent/Construction.bas-processBuildTask()tracksavancementvscout_totalContinent/outils.bas-avancetask()function updates progress
-
Construction Requirements: Buildings require tools, materials, and workers (peons)
Continent/Construction.bas- Tool consumption calculation inprocessBuildTask()Continent/Construction.bas- Material requirements fromTYPE_TACHEStable
-
Building Placement: Buildings are placed on specific map coordinates with footprint management
Continent/Construction.bas- Building placement logicContinent/carte.bas-getCases()function calculates building footprint
-
Building Sprites: Visual representation of buildings on the map with different sprites per building type
Continent/carte.bas-updateMap()function places sprites on map layer 2
-
Building Repairs: Buildings can be repaired when damaged
Continent/Construction.bas-processRepareTask()functionContinent/cntSRV.frm- Server loop processes repair tasks
-
Building State: Buildings have a state/condition that degrades over time
Continent/CONSTRUCTIONStable -etatfield tracks building conditionContinent/Construction.bas- State management in repair functions
-
Building Collapse: Buildings can collapse if not maintained (state < 5%)
Continent/evenements.bas- Building collapse eventsContinent/cntSRV.frm- Collapse detection and handling
-
Automatic Maintenance: General building maintenance task for all buildings
Continent/Construction.bas-processRepareTask()handles general maintenanceContinent/cntSRV.frm- Maintenance task scheduling
-
Targeted Repairs: Specific building repair tasks
Continent/Construction.bas-processRepareTask()handles specific repairs
-
Repair Costs: Repairs consume tools, wood, and stone
Continent/Construction.bas-processRepareTask()consumes resources
-
Terrain Paving: Convert terrain to paved surfaces
Continent/Construction.bas- Terrain modification tasksContinent/carte.bas-updateMap()updates terrain layer
-
Terrain Damage: Damage terrain (fill swamps, water holes)
Continent/Construction.bas- Terrain modification actionsContinent/carte.bas- Map layer updates
-
Terrain Transformation: Transform terrain types (marsh to land, water holes to land)
Continent/Construction.bas- Terrain transformation logicContinent/carte.bas-updateMap()modifies terrain layer (layer 1)
-
Terrain Requirements: Terrain modifications require tools and workers
Continent/Construction.bas- Resource consumption for terrain tasks
-
Boat Building: Construction of naval vessels
Continent/Construction.bas-processBuildBoatTask()functionContinent/cntSRV.frm- Server processes boat construction tasks
-
Boat Repair: Repair damaged naval vessels
Continent/Construction.bas-processRepareBoatTask()function
-
Boat Placement: Automatic placement of completed boats on water tiles
Continent/Construction.bas-processBuildBoatTask()finds water tiles and places boatsContinent/militaire.bas-createBateau()function creates naval units
-
Boat Construction Sites: Visual representation of boats under construction on map
Continent/Construction.bas- Sprite 254 used for construction sitesContinent/carte.bas-updateMap()places construction sprites
-
Multiple Production Types: Production of various resources (food, wood, stone, metal, etc.)
Continent/production.bas-processProdTask()function handles all production typesContinent/cntSRV.frm- Server loop processes production tasks
-
Production Buildings: Production requires specific buildings (farms, mines, forges, etc.)
Continent/production.bas-getMaxPeonsForProd()checks building requirementsContinent/production.bas- Building validation inprocessProdTask()
-
Worker Assignment: Assign workers (peons) to production tasks
Continent/production.bas-processProdTask()usesnb_peonsparameterContinent/ACTIONStable - Stores peon assignments per production
-
Production Capacity: Maximum workers per production based on building count
Continent/production.bas-getMaxPeonsForProd()calculates capacity
-
Production Bonuses: Bonuses from sciences, regional modifiers, morale
Continent/production.bas-getBonusProdMR()calculates production bonusesContinent/server_tools.bas-getBonus()function retrieves science bonuses
-
Production Efficiency: Production affected by morale, tools availability, and bonuses
Continent/production.bas-processProdTask()includes morale and tool calculations
-
Farming: Crop production with seasonal variations
Continent/production.bas-placeFermiers()places farmers on mapContinent/production.bas- Seasonal effects in production calculations
-
Mining: Stone and metal extraction
Continent/production.bas- Mining production logicContinent/production.bas-placeMiners()places miners with smoke effects
-
Logging: Wood production with forest management
Continent/production.bas-processAbattageTask()handles loggingContinent/production.bas-placeBucherons()places loggers on map
-
Hunting: Food production from hunting
Continent/production.bas- Hunting production type
-
Fishing: Food production from fishing (affected by season)
Continent/production.bas-placePecheurs()places fishermen at docksContinent/production.bas- Seasonal fishing calculations
-
Livestock: Animal breeding (cattle, horses, pigeons)
Continent/production.bas-processAbattageTask()handles animal slaughteringContinent/production.bas- Animal reproduction logic
-
Crafting: Tool and weapon production
Continent/production.bas- Crafting production typesContinent/production.bas-placeForgerons()places blacksmiths
-
Gathering: Food gathering (seasonal, affected by winter)
Continent/production.bas-placeCueilleurs()places gatherersContinent/production.bas- Winter effects on gathering
-
Material Consumption: Some productions consume raw materials
Continent/production.bas-processProdTask()consumes materials from inventory
-
Tool Consumption: Productions consume tools
Continent/production.bas-processProdTask()calculates and consumes tools
-
Seasonal Effects: Production affected by seasons (winter reduces some productions)
Continent/production.bas- Seasonal modifiers in production calculationsContinent/evenements.bas- Winter event affects production
-
Reproduction Rates: Animal production based on existing herd size
Continent/production.bas- Animal reproduction calculations
-
Capacity Limits: Production limited by building capacity (stables, enclosures)
Continent/production.bas-getMaxPeonsForProd()enforces capacity limits
-
Spring Bonus: Increased animal reproduction in spring
Continent/production.bas- Seasonal bonuses for animal production
-
Random Factors: Production includes random variation
Continent/production.bas- Random factors in production calculations
-
Worker Placement on Map: Visual representation of workers on map (loggers, miners, farmers, etc.)
Continent/production.bas-placeBucherons(),placeCarriers(),placeFermiers(), etc.Continent/carte.bas-updateMap()places worker sprites on map layer 2
-
Forestry Workers: Foresters planting trees
Continent/production.bas-placeForestiers()places forestersContinent/carte.bas- Tree planting in map normalization
-
Fishermen: Fishermen at docks
Continent/production.bas-placePecheurs()places fishermen
-
Farmers: Farmers in fields
Continent/production.bas-placeFermiers()places farmers
-
Miners: Miners at mines with smoke effects
Continent/production.bas-placeMiners()places miners with visual effects
-
Blacksmiths: Blacksmiths at forges
Continent/production.bas-placeForgerons()places blacksmiths
-
Deep Sea Fishing: Extended fishing campaigns with naval vessels
Continent/Productions.bas-PROD_ResultatPechehauturiere()functionContinent/militaire.bas- Naval fishing campaigns inprocessArmeeTask()
-
Slaughtering: Automatic weekly slaughtering of animals
Continent/production.bas-processAbattageTask()handles weekly slaughtering
-
Tree Planting: Forest management and tree planting
Continent/carte.bas-normaliseCarte()includes tree planting logic
-
Army Formation: Train and form military units
Continent/militaire.bas-processArmeeTask()handles unit trainingContinent/militaire.bas-createTroupe()function creates new unitsContinent/cntSRV.frm- Server processes army formation tasks
-
Unit Composition: Units composed of different troop types
Continent/ARMEEStable -compositionfield stores unit compositionContinent/militaire.bas- Composition parsing and management
-
Unit Experience: Units gain experience from combat and actions
Continent/ARMEEStable -experiencefield tracks unit experienceContinent/militaire.bas- Experience gain in combat and travel
-
Unit Movement: Units can move across the map
Continent/militaire.bas-processArmeeTask()handles "voyage" actionContinent/carte.bas- Map position updates for moving units
-
Unit Speed: Movement speed based on composition and bonuses
Continent/militaire.bas-getTroupeSpeed()calculates movement speedContinent/server_tools.bas-getBonus()provides navigation bonuses
-
Unit Power: Combat power calculation based on composition and experience
Continent/militaire.bas-getTroupeForceNoSiege()calculates combat powerContinent/militaire.bas- Experience affects power indoBattle()
-
Unit Sprites: Visual representation of units on map
Continent/militaire.bas-getTroupeSprite()generates unit spritesContinent/militaire.bas-generateTroupePic()creates unit imagesContinent/carte.bas-updateMap()places unit sprites on map
-
Combat: Battle resolution between units
Continent/militaire.bas-resolveBattle()resolves skirmishesContinent/militaire.bas-doBattle()handles instant combatContinent/cntSRV.frm- Battle resolution in server loop
-
Siege: Siege of fortified positions
Continent/militaire.bas-processArmeeTask()handles "siege" actionContinent/militaire.bas- Siege resolution logic
-
Assault: Assault on citadels
Continent/militaire.bas-processArmeeTask()handles "assaut" actionContinent/militaire.bas- Citadel assault resolution
-
Raid: Raid operations
Continent/militaire.bas- Raid actions inprocessArmeeTask()
-
Garrison: Units can garrison in villages
Continent/militaire.bas- Garrison logic inprocessArmeeTask()Continent/ARMEEStable -actionfield tracks garrison status
-
Protection: Units can protect allied villages
Continent/militaire.bas- Protection actions inprocessArmeeTask()
-
Escort: Units can escort convoys
Continent/militaire.bas- Escort actions inprocessArmeeTask()
-
Naval Units: Naval vessels as military units
Continent/militaire.bas-createBateau()creates naval unitsContinent/militaire.bas-isBoat()checks if unit is navalContinent/ARMEEStable - Naval units stored with composition > 3999 and < 5999
-
Naval Combat: Naval battle system
Continent/militaire.bas- Naval combat indoBattle()andresolveBattle()
-
Naval Movement: Ship movement on water tiles
Continent/militaire.bas-processArmeeTask()handles naval movementContinent/militaire.bas- Navigation actions for ships
-
Naval Repair: Ship repair system
Continent/Construction.bas-processRepareBoatTask()repairs shipsContinent/militaire.bas- Ship condition tracking
-
Ship Life: Ships have durability that degrades
Continent/ARMEEStable - Ship condition/life trackingContinent/militaire.bas- Ship degradation over time
-
Ship Sinking: Ships can sink if not maintained
Continent/evenements.bas- Ship sinking logicContinent/militaire.bas- Ship sinking in naval operations
-
Portal Teleportation: Units can teleport through portals (with risk of failure)
Continent/militaire.bas-processArmeeTask()handles "distorsion" actionContinent/militaire.bas- Portal jump logic with success/failure rates
-
Portal Jump Requests: Request permission for portal jumps
Continent/militaire.bas- "ASK_JUMP" action typeContinent/militaire.bas- Portal jump request handling
-
Portal Jump Authorization: Players can authorize/refuse portal jumps
Continent/militaire.bas- Portal authorization logicContinent/militaire.bas- Jump refusal handling
-
Distortion Travel: Teleportation system with success/failure rates
Continent/militaire.bas- Distortion travel with random success ratesContinent/militaire.bas- Failed teleportation consequences
-
Travel: Units travel to specific coordinates
Continent/militaire.bas-processArmeeTask()handles "voyage" actionContinent/militaire.bas- Travel progress and arrival logic
-
Exploration: Units can explore special locations
Continent/exploration.bas-processExplore()functionContinent/militaire.bas- CallsprocessExplore()for exploration actions
-
Battle Resolution: Detailed battle system
Continent/militaire.bas-resolveBattle()resolves skirmishesContinent/militaire.bas-doBattle()handles instant combatContinent/militaire.bas- Force calculations, casualties, experience gain
-
Defense Bonuses: Village defense bonuses
Continent/militaire.bas- Defense bonuses in combat calculationsContinent/militaire.bas- Village fortification effects
-
Combat Results: Victory/defeat tracking
Continent/militaire.bas- Battle outcome determinationContinent/militaire.bas- Win/loss tracking in battle results
-
Casualties: Unit losses in combat
Continent/militaire.bas-removeSoldatsFromTroupe()removes casualtiesContinent/militaire.bas- Casualty calculations indoBattle()andresolveBattle()
-
Battle Reports: Detailed battle reports for players
Continent/militaire.bas- Battle result messagesContinent/server_tools.bas-generateMessageFor()creates battle reports
-
Nation Relations: Diplomatic status between nations (War, Hostile, Neutral, Peace, Alliance)
Continent/Diplo.bas-getDiploNation()retrieves nation relationsContinent/Diplo.bas-InitDiploNations()initializes diplomatic matrixContinent/NATIONStable -diplomatiefield stores relation matrix
-
Player Relations: Diplomatic relations between players/fiefs
Continent/Diplo.bas-getDiploJoueur()calculates player relationsContinent/Diplo.bas-DIP_EstJoueurEnGuerre(),DIP_EstJoueurEnnemi(), etc.
-
Diplomatic Status Matrix: Matrix of relations between all nations
Continent/Diplo.bas-arrDiploNations()array stores relation matrixContinent/Diplo.bas-InitDiploNations()builds matrix from database
-
Alliance System: Military alliances between players
Continent/Diplo.bas-allianceEntre()checks for alliancesContinent/Diplo.bas- Alliances override national diplomatic status
-
Pact Effects: Pacts affect diplomatic relations
Continent/Pactes.bas-PAC_EstParia(),PAC_EstPNA()check pact statusContinent/Diplo.bas- Pact effects ingetDiploJoueur()
-
Ambassadors: Ambassador system for diplomatic relations
Continent/Diplo.bas-DIP_NbAmbassadeursAmis(),DIP_NbAmbassadeursEnnemis()Continent/AMBASSADEStable - Stores ambassador dataContinent/cntSRV.frm- Ambassador management in server
-
Embassy Management: Count of friendly/enemy ambassadors
Continent/Diplo.bas- Ambassador counting functionsContinent/cntSRV.frm- Embassy management interface
-
Pariah Status: Players can be declared pariahs by nations
Continent/Pactes.bas-PAC_EstParia(),PAC_setParia(),PAC_unsetParia()Continent/PACTEStable - Stores pariah status (PDR)
-
Non-Aggression Pacts: Pacts of non-aggression (PNA)
Continent/Pactes.bas-PAC_EstPNA(),PAC_setPNA(),PAC_unsetPNA()Continent/PACTEStable - Stores PNA pacts
-
Diplomatic Override: Alliances override national diplomatic status
Continent/Diplo.bas-getDiploJoueur()checks alliances first
-
Commerce Guild: Trade and economic guild
Continent/guildes.bas- Commerce guild operationsContinent/NIVEAUX_GUILDEStable -commercefield tracks level
-
Shadow Guild: Secret operations guild
Continent/guildes.bas- Shadow guild (ombre) operationsContinent/NIVEAUX_GUILDEStable -ombrefield tracks level
-
Saffron Guild: Specialized guild
Continent/guildes.bas- Saffron guild operationsContinent/NIVEAUX_GUILDEStable -saffranfield tracks level
-
Church Guild: Religious guild
Continent/guildes.bas- Church guild (eglise) operationsContinent/NIVEAUX_GUILDEStable -eglisefield tracks level
-
Banking: Interest-bearing bank accounts
Continent/guildes.bas-processGuildeTask()handles bankingContinent/guildes.bas- Interest calculations withBANQUE_TAUX_INTERET
-
Loans: Debt system with repayment
Continent/guildes.bas-processGuildeTask()handles debt repaymentContinent/guildes.bas- Loan management
-
Artifact Market: Market for magical artifacts
Continent/guildes.bas-updateMarcheArtefacts()updates artifact marketContinent/guildes.bas-getObjetValue()calculates artifact valuesContinent/MARCHE_ARTEFACTStable - Stores artifact market data
-
Auction System: Auction system for artifacts
Continent/guildes.bas- Auction resolution logicContinent/guildes.bas-updateCours()updates auction prices
-
Delivery Service: Guild delivery of goods
Continent/guildes.bas-processGuildeTask()handles deliveriesContinent/guildes.bas- Delivery logistics
-
Black Market: Black market operations
Continent/guildes.bas- Black market functionality
-
Guild Reputation: Reputation levels with different guilds
Continent/NIVEAUX_GUILDEStable - Tracks reputation levels per guildContinent/guildes.bas- Reputation management
-
Guild Levels: Level progression in guilds
Continent/NIVEAUX_GUILDEStable - Level trackingContinent/cntSRV.frm- Level normalization in server loop
-
Lottery: Guild-run lottery system
Continent/guildes.bas- Lottery functionality
-
Artifact Valuation: Dynamic artifact pricing
Continent/guildes.bas-getObjetValue()calculates valuesContinent/guildes.bas-updateCours()updates prices
-
Market Updates: Regular market updates and price fluctuations
Continent/guildes.bas-updateCours()updates market pricesContinent/cntSRV.frm- Market updates in server loop
-
Alchemical Effects: Temporary magical effects
Continent/guildes.bas-processAlchimieTask()handles alchemyContinent/guildes.bas- Alchemical effect application
-
Alchemical Cancellation: Cancel alchemical effects
Continent/guildes.bas-processAlchimieTask()handles cancellation
-
Alchemical Duration: Time-limited magical bonuses
Continent/guildes.bas- Duration tracking in alchemy tasks
-
Location Discovery: Discover and explore special locations
Continent/exploration.bas-processExplore()function handles explorationContinent/militaire.bas- CallsprocessExplore()for exploration actionsContinent/LIEUXtable - Stores location data
-
Location Content: Locations contain treasures, monsters, events
Continent/exploration.bas-generateContenuLieu()generates location contentContinent/exploration.bas- Content parsing and application
-
Location Generation: Dynamic location content generation
Continent/exploration.bas-generateContenuLieu()creates location contentContinent/exploration.bas- Random content generation
-
Location Visits: Track last visit to locations
Continent/LIEUXtable -last_visitfield tracks visitsContinent/exploration.bas- Updateslast_visitafter exploration
-
Location Recharge: Locations can recharge over time
Continent/exploration.bas- Location recharge logicContinent/LIEUXtable - Recharge tracking
-
Treasure Discovery: Find treasures (resources, artifacts)
Continent/exploration.bas- Treasure discovery inprocessExplore()Continent/exploration.bas- Resource and artifact rewards
-
Monster Encounters: Encounter monsters during exploration
Continent/exploration.bas- Monster encounters trigger combatContinent/exploration.bas- CallsdoBattle()for monster combat
-
Artifact Discovery: Find powerful artifacts
Continent/exploration.bas- Artifact discovery logicContinent/exploration.bas- Artifact rewards
-
Super Treasures: Discover unique super treasures
Continent/exploration.bas- Super treasure discovery
-
Messages: Encoded messages in locations
Continent/exploration.bas-encodeMessage()encodes messagesContinent/exploration.bas- Message discovery and decoding
-
Events: Trigger special events from exploration
Continent/exploration.bas- Event triggering from explorationContinent/exploration.bas- Special event handling
-
Experience Gain: Units gain experience from exploration
Continent/exploration.bas- Experience rewards from exploration
-
Combat in Exploration: Combat can occur during exploration
Continent/exploration.bas- CallsdoBattle()for combat encountersContinent/militaire.bas-doBattle()resolves exploration combat
-
Unit Loss: Units can be lost during exploration
Continent/exploration.bas- Unit loss handlingContinent/exploration.bas- Checks if unit exists before exploration
-
Location Exit: Units exit locations after exploration
Continent/exploration.bas- Unit exit logicContinent/exploration.bas- Map position updates after exit
-
Exploration Priority: Priority system for exploration results
Continent/exploration.bas- Priority handling inprocessExplore()
-
Research Progress: Research progresses over time
Continent/recherche.bas-processRechercheTask()advances researchContinent/recherche.bas-avancementcalculation with bonusesContinent/cntSRV.frm- Server processes research tasks
-
Research Levels: Multiple levels of research per science
Continent/BONUStable - Stores research levels per playerContinent/recherche.bas- Level tracking and progression
-
Research Costs: Research costs money (researcher salaries)
Continent/recherche.bas- Cost calculation inprocessRechercheTask()Continent/recherche.bas- Financial requirements for research
-
Research Bonuses: Bonuses affect research speed
Continent/recherche.bas-getBonus(joueur, "SCIENCE")provides bonusesContinent/recherche.bas- Morale and bonus effects on research speed
-
Research Completion: Research completion grants bonuses
Continent/recherche.bas- Completion detection and bonus applicationContinent/BONUStable - Bonus storage after completion
-
Combat Sciences: Military research
Continent/TYPE_BONUStable - Combat science typesContinent/recherche.bas- Combat research handling
-
Production Sciences: Production efficiency research
Continent/TYPE_BONUStable - Production science typesContinent/recherche.bas- Production research handling
-
Navigation Sciences: Naval and movement research
Continent/TYPE_BONUStable - Navigation science typesContinent/recherche.bas- Navigation research handling
-
Magic Sciences: Magical research (levels 600-999)
Continent/recherche.bas- Magic research detection (levels 600-999)Continent/recherche.bas- Special handling for magic sciences
-
Specialized Production: Special production research
Continent/TYPE_BONUStable - Specialized production typesContinent/recherche.bas- Specialized research handling
-
Automatic Updates: Research automatically updates unit stats
Continent/server_tools.bas-getBonus()retrieves research bonusesContinent/militaire.bas- Bonuses applied to unit calculations
-
Combat Power Updates: Combat research updates unit power
Continent/militaire.bas-getBonus(joueur, "COMBAT")affects combat powerContinent/militaire.bas- Combat bonuses ingetTroupeForceNoSiege()
-
Movement Updates: Navigation research updates movement speed
Continent/militaire.bas-getBonus(joueur, "NAVIGATION")affects speedContinent/militaire.bas- Navigation bonuses ingetTroupeSpeed()
-
Reputation Gain: Research completion increases reputation
Continent/recherche.bas- Reputation updates on completionContinent/VILLAGEStable - Reputation field updates
-
Rank Increase: Research completion increases rank
Continent/recherche.bas- Rank updates on completionContinent/server_tools.bas-augmenteRang()function
-
Vassalization: Players can become vassals of other players
Continent/militaire.bas-changeSuzerain()function handles vassalizationContinent/VILLAGEStable -suzerainfield stores suzerain IDContinent/Fief.bas- Fief management functions
-
Suzerain System: Suzerain-vassal relationships
Continent/militaire.bas-changeSuzerain()manages relationshipsContinent/VILLAGEStable - Suzerain trackingContinent/feodalisme.bas- Feudal relationship functions
-
Vassal Protection: Suzerains must protect vassals
Continent/feodalisme.bas-checkPresenceSuzeniale()checks protectionContinent/militaire.bas- Protection requirements
-
Required Garrison: Minimum military presence required for vassals
Continent/feodalisme.bas-getSuzerainRequiredLames()calculates required garrisonContinent/feodalisme.bas-checkPresenceSuzeniale()validates presence
-
Vassal Tax: Tax system between suzerain and vassal
Continent/VILLAGEStable -taxe_suzfield stores tax rateContinent/militaire.bas- Tax collection inchangeSuzerain()Continent/production.bas- Tax handling in treasury management
-
Suzerain Authority: Suzerains have authority over vassals
Continent/militaire.bas- Authority inchangeSuzerain()Continent/feodalisme.bas- Authority calculations
-
Vassal Loss Penalties: Penalties for losing vassals
Continent/militaire.bas-changeSuzerain()applies penalties to former suzerainContinent/militaire.bas- Reputation and rank penalties
-
Feudal Reputation: Reputation affected by feudal management
Continent/militaire.bas- Reputation updates inchangeSuzerain()Continent/VILLAGEStable - Reputation field
-
Vassal Independence: Vassals can break free
Continent/militaire.bas- Vassal independence logicContinent/militaire.bas- Breaking vassalage
-
Feudal Relations: Diplomatic relations affect vassal requirements
Continent/feodalisme.bas- Diplomatic effects on vassalageContinent/Diplo.bas- Relation checks
-
Political Influence: Players can influence other players' populations
Continent/INFLUENCEStable - Stores influence dataContinent/Diplomatie.bas- Influence management
-
Influence Resistance: Resistance to influence
Continent/Diplomatie.bas- Resistance calculationsContinent/INFLUENCEStable - Resistance tracking
-
Influence Effects: Influence affects various game mechanics
Continent/Diplomatie.bas- Influence applicationContinent/evenements.bas- Influence effects on events
-
Revolt Management: Influence can cause or stop revolts
Continent/evenements.bas-processRevolteTask()handles revoltsContinent/evenements.bas- Planned revolts from influence
-
Disease System: Epidemic system with multiple disease types
Continent/evenements.bas-RandomEvents()function generates diseasesContinent/evenements.bas-processMaladieTask()handles disease progressionContinent/ACTIONStable - Disease actions stored with type 'MALADIE'
-
Disease Contagion: Diseases spread through population
Continent/evenements.bas- Contagion calculations inRandomEvents()Continent/evenements.bas-MALADIE_CONTAGION_*parameters control spread
-
Disease Treatment: Medicine consumption for disease treatment
Continent/evenements.bas- Medicine consumption inprocessMaladieTask()Continent/INVENTAIREtable - Medicine (denree=10) consumption
-
Disease Mortality: Diseases can kill population
Continent/evenements.bas- Mortality calculations inprocessMaladieTask()Continent/evenements.bas- Population reduction from diseases
-
Disease Recovery: Natural and medical recovery from diseases
Continent/evenements.bas- Recovery calculations inprocessMaladieTask()Continent/evenements.bas-MALADIE_GUERISON_*parameters control recovery
-
Monster Attacks: Random monster attacks on villages
Continent/evenements.bas-attaqueMonstres()functionContinent/evenements.bas-addMonstre()adds monsters to mapContinent/cntSRV.frm- Monster attack processing
-
Monster Raids: Monster raids with pillaging
Continent/evenements.bas- Raid logic inattaqueMonstres()Continent/evenements.bas- Pillaging effects
-
Monster Movement: Monsters move across the map
Continent/evenements.bas- Monster movement logicContinent/carte.bas- Monster sprite updates
-
Monster Aggressiveness: Increased monster activity in winter
Continent/evenements.bas- Winter effects on monstersContinent/evenements.bas- Seasonal monster behavior
-
Monster Escarmouches: Random skirmishes with monsters
Continent/evenements.bas-generateEscarmouches()functionContinent/militaire.bas- Combat resolution for skirmishes
-
Revolt System: Population revolts against player
Continent/evenements.bas-processRevolteTask()handles revoltsContinent/ACTIONStable - Revolt actions storedContinent/evenements.bas-generateRumeurs()generates revolt rumors
-
Revolt Causes: Various causes for revolts
Continent/evenements.bas- Multiple revolt triggersContinent/INFLUENCEStable - External influence causes revolts
-
Revolt Resolution: Revolts can be resolved diplomatically or by force
Continent/evenements.bas- Resolution logic inprocessRevolteTask()Continent/evenements.bas- Diplomatic and military resolution
-
Revolt Effects: Revolts affect production and reputation
Continent/evenements.bas- Production reduction during revoltsContinent/evenements.bas- Reputation penalties
-
Planned Revolts: Revolts can be planned by external influence
Continent/evenements.bas- Planned revolt logic inprocessRevolteTask()Continent/INFLUENCEStable - Influence-based revolts
-
Building Collapse: Buildings collapse if not maintained
Continent/evenements.bas- Building collapse detectionContinent/cntSRV.frm- Collapse processing
-
Fires: Forest fires that spread
Continent/carte.bas-generateIncendies()generates firesContinent/carte.bas-allumeIncendie()starts firesContinent/carte.bas- Fire propagation logic
-
Weather Effects: Weather affects various game mechanics
Continent/evenements.bas- Weather event handlingContinent/cntSRV.frm- Weather effects on production, naval, etc.
-
RP Events: Role-playing events system
Continent/evenements.bas-createRandomRPE()generates RP eventsContinent/evenements.bas-createPlanifiedRPE()creates scheduled RP eventsContinent/RP_EVENTStable - RP event definitionsContinent/RP_PLANIFtable - Scheduled RP events
-
Scheduled Events: Events scheduled for specific cycles/turns
Continent/evenements.bas- Event scheduling logicContinent/RP_PLANIFtable - Scheduled eventsContinent/RP_SCRIPTtable - Event scripts
-
Hexagonal Map: Hexagonal grid-based map system
Continent/carte.bas- Hexagonal coordinate calculationsContinent/carte.bas-getCases()handles hexagonal offsetsContinent/cntSRV.frm-MAP_WIDTHparameter defines map size
-
Map Layers: Multiple map layers (terrain, objects, units)
Continent/carte.bas-getMap()andupdateMap()work with layersContinent/carte.bas- Layer 1 (terrain), Layer 2 (objects/sprites), Layer 3 (territory)Continent/map/directory - Binary map files (layer0.map, layer1.map)
-
Map Coordinates: X,Y coordinate system
Continent/carte.bas- Coordinate calculationsContinent/carte.bas- Position conversion:pos = 1 + x + (y * MAP_WIDTH)
-
Map Sprites: Visual representation system with sprites
Continent/carte.bas-updateMap()places sprites on layer 2Continent/militaire.bas-getTroupeSprite()generates unit spritesContinent/carte.bas- Sprite management
-
Map Updates: Dynamic map updates during turn resolution
Continent/carte.bas-normaliseCarte()updates map each turnContinent/cntSRV.frm- Map normalization in server loop
-
Terrain Types: Various terrain types (land, water, mountains, etc.)
Continent/carte.bas- Terrain type checking (layer 1)Continent/carte.bas- Terrain validation (e.g.,getMap(1, pos) > 19for land)
-
Obstacles: Obstacles on map (trees, buildings, etc.)
Continent/carte.bas- Obstacle checking on layer 2Continent/carte.bas-getMap(2, pos)retrieves obstacles
-
Resource Nodes: Natural resources on map
Continent/carte.bas- Resource placement innormaliseCarte()Continent/MAP_SPECIALtable - Special map features
-
Special Locations: Special locations for exploration
Continent/LIEUXtable - Special locationsContinent/exploration.bas- Location exploration
-
Treasure Spawning: Random treasure placement
Continent/carte.bas- Treasure placement innormaliseCarte()Continent/carte.bas- Random treasure generation
-
Map Normalization: Map cleanup and normalization
Continent/carte.bas-normaliseCarte()main normalization functionContinent/carte.bas- Worker removal, tree planting, animal spawningContinent/cntSRV.frm- Called each turn
-
Sprite Management: Sprite placement and removal
Continent/carte.bas-updateMap()places/removes spritesContinent/carte.bas-normaliseTroupes()manages unit sprites
-
Case Locking: Case locking for construction sites
Continent/carte.bas- Sprite 254 and 255 used for locked casesContinent/Construction.bas- Case locking during construction
-
Pathfinding: Pathfinding for unit movement
Continent/militaire.bas- Pathfinding inprocessArmeeTask()Continent/militaire.bas- Movement calculations
-
Distance Calculation: Distance calculations between points
Continent/militaire.bas- Distance calculations:Sqr((nx * nx) + (ny * ny))Continent/server_tools.bas-getDistanceBetween()function
-
Tree Growth: Trees grow over time
Continent/carte.bas- Tree growth innormaliseCarte()Continent/carte.bas- Tree planting and growth logic
-
Forest Regeneration: Forest regeneration system
Continent/carte.bas- Forest regeneration innormaliseCarte()Continent/carte.bas- Tree placement algorithms
-
Animal Spawning: Wild animals spawn on map
Continent/carte.bas- Animal spawning innormaliseCarte()Continent/carte.bas-getCaseLibreSauvage()finds spawn locations
-
Monster Spawning: Monsters spawn on map
Continent/evenements.bas-addMonstre()adds monstersContinent/carte.bas- Monster sprite placement
-
Fire Propagation: Forest fires spread
Continent/carte.bas-generateIncendies()generates firesContinent/carte.bas-allumeIncendie()starts firesContinent/carte.bas- Fire spread logic
-
Weather Effects on Map: Weather affects map elements
Continent/carte.bas- Weather effects in normalizationContinent/evenements.bas- Weather event effects
-
Currency System: Gold/écus currency system
Continent/VILLAGEStable -tresorfield stores gold/écusContinent/server_tools.bas-addEntreeTresor()manages treasuryContinent/production.bas-handleTresor()manages village treasury
-
Resource Trading: Trading of various resources
Continent/Diplomatie.bas- Trading functionsContinent/INVENTAIREtable - Resource storageContinent/server_tools.bas-addEntreeStocks()manages inventory
-
Market Prices: Dynamic market prices
Continent/guildes.bas-updateCours()updates market pricesContinent/guildes.bas- Price calculations
-
Price Fluctuations: Prices change based on supply/demand
Continent/guildes.bas- Price fluctuation logicContinent/cntSRV.frm- Market updates in server loop
-
Stock Management: Inventory management system
Continent/INVENTAIREtable - Stores player inventoriesContinent/server_tools.bas-addEntreeStocks()manages stocksContinent/server_tools.bas-getVal()andsetVal()for inventory
-
Guild Commerce: Trade through guilds
Continent/guildes.bas- Guild commerce operationsContinent/guildes.bas-processGuildeTask()handles commerceContinent/NIVEAUX_GUILDEStable - Commerce guild levels
-
Market Updates: Regular market price updates
Continent/guildes.bas-updateCours()updates pricesContinent/cntSRV.frm- Regular market updates
-
Trade Routes: Trade route system
Continent/militaire.bas- Trade route actionsContinent/ARMEEStable - Trade route tracking
-
Convoys: Trade convoy system
Continent/militaire.bas- Convoy actions inprocessArmeeTask()Continent/ARMEEStable - Convoy tracking (action like 'CONVOI-%')
-
Black Market: Black market trading
Continent/guildes.bas- Black market operationsContinent/guildes.bas- Shadow guild black market
-
Interest System: Bank interest on deposits
Continent/guildes.bas-processGuildeTask()calculates interestContinent/guildes.bas-BANQUE_TAUX_INTERETparameterContinent/guildes.bas- Interest payments
-
Loan System: Loan and debt system
Continent/guildes.bas-processGuildeTask()handles loansContinent/guildes.bas- Debt repayment logic
-
Tax System: Tax collection from population
Continent/production.bas-handleTresor()collects taxesContinent/VILLAGEStable -taxefield stores tax rateContinent/server_tools.bas- Tax calculations withgetBonus(joueur, "TAXE_ACC")
-
Reputation Effects: Reputation affects economic opportunities
Continent/VILLAGEStable -reputationfieldContinent/guildes.bas- Reputation affects guild servicesContinent/production.bas- Reputation affects market income
-
Deep Sea Fishing: Extended fishing campaigns
Continent/Productions.bas-PROD_ResultatPechehauturiere()functionContinent/militaire.bas-processArmeeTask()handles fishing campaignsContinent/militaire.bas- Fishing action type 'peche-%'
-
Naval Travel: Ship movement across water
Continent/militaire.bas-processArmeeTask()handles naval movementContinent/militaire.bas- Navigation actions for shipsContinent/militaire.bas- Ship movement on water tiles
-
Naval Combat: Naval battle system
Continent/militaire.bas-doBattle()andresolveBattle()handle naval combatContinent/militaire.bas- Naval units in combat
-
Ship Maintenance: Ship repair and maintenance
Continent/Construction.bas-processRepareBoatTask()repairs shipsContinent/militaire.bas- Ship maintenance tracking
-
Ship Durability: Ship condition system
Continent/ARMEEStable - Ship condition/life trackingContinent/militaire.bas- Ship degradation over timeContinent/evenements.bas- Ship sinking from poor condition
-
Weather Effects: Weather affects naval operations
Continent/militaire.bas- Weather effects on naval movementContinent/evenements.bas- Weather events affect ships
-
Ship Sinking: Ships can sink from damage or poor maintenance
Continent/evenements.bas- Ship sinking logicContinent/militaire.bas- Ship sinking from damageContinent/evenements.bas- Ship condition checks
-
Naval Experience: Ships gain experience
Continent/ARMEEStable -experiencefield for shipsContinent/militaire.bas- Experience gain from naval operations
-
Fishing Results: Variable fishing results based on conditions
Continent/Productions.bas-PROD_ResultatPechehauturiere()calculates resultsContinent/militaire.bas- Fishing result variations
-
Naval Bonuses: Navigation bonuses affect naval operations
Continent/militaire.bas-getBonus(joueur, "NAVIGATION")affects naval speedContinent/militaire.bas-getBonus(joueur, "NAVAL_ACC")affects constructionContinent/server_tools.bas-getBonus()retrieves bonuses
-
Hero Recruitment: Recruit powerful hero units
Continent/militaire.bas-isHeros()checks if unit is hero (composition > 9999)Continent/militaire.bas- Hero unit creationContinent/ARMEEStable - Heroes stored with special composition IDs
-
Hero Maintenance: Heroes require payment (money or sacrifices)
Continent/militaire.bas- Hero maintenance logicContinent/militaire.bas- Payment and sacrifice requirements
-
Hero Resurrection: Heroes can be resurrected with special items
Continent/militaire.bas- Hero resurrection logicContinent/INVENTAIREtable - Special items for resurrection
-
Hero Requirements: Heroes require palaces
Continent/CONSTRUCTIONStable - Palace building requirementsContinent/militaire.bas- Palace validation for heroes
-
Hero Departure: Heroes leave if not paid or if palace destroyed
Continent/militaire.bas- Hero departure logicContinent/militaire.bas- Payment failure handling
-
Hero Salaries: Heroes require regular payment
Continent/militaire.bas- Salary payment logicContinent/VILLAGEStable - Treasury used for payments
-
Hero Sacrifices: Some heroes require population sacrifices
Continent/militaire.bas- Sacrifice requirementsContinent/VILLAGEStable - Population reduction for sacrifices
-
Hero Resurrection Cost: Resurrection requires special items (blue stones)
Continent/militaire.bas- Resurrection item requirementsContinent/INVENTAIREtable - Special items (blue stones)
-
Hero Experience Loss: Heroes lose experience on death
Continent/militaire.bas- Experience loss on hero deathContinent/ARMEEStable - Experience tracking
-
Hero Reputation: Hero management affects reputation
Continent/militaire.bas- Reputation effects from hero managementContinent/VILLAGEStable - Reputation updates
-
Team System: Teams compete in swag matches
Continent/swag.bas-resolveSwagJournee()processes swag dayContinent/SWAG_TEAMStable - Team dataContinent/SWAG_MATCHStable - Match data
-
Match Resolution: Match results based on strategies
Continent/swag.bas-resolveSwagMatch()resolves matchesContinent/swag.bas- Strategy-based resolution
-
Strategy System: Different strategies for matches
Continent/swag.bas- Strategy handling inresolveSwagMatch()Continent/SWAG_TEAMStable -strategiefield stores strategiesContinent/swag.bas-swagGetBonusCombinaison()calculates strategy bonuses
-
Round System: Multiple rounds per match
Continent/swag.bas- Round system inresolveSwagMatch()Continent/SWAG_POULEStable - Round trackingContinent/swag.bas- Round progression
-
Victory/Defeat: Win/loss tracking
Continent/swag.bas- Victory/defeat determinationContinent/SWAG_TEAMStable -victoires,defaitesfieldsContinent/swag.bas- Win/loss updates
-
Arena Requirements: Matches require arenas
Continent/CONSTRUCTIONStable - Arena building requirementsContinent/swag.bas- Arena validation
-
Portal Requirements: Portals needed for matches
Continent/CONSTRUCTIONStable - Portal building requirementsContinent/swag.bas- Portal validation for matches
-
Reputation Effects: Swag results affect reputation
Continent/swag.bas- Reputation updates from swag resultsContinent/VILLAGEStable - Reputation field updates
-
Prize Money: Financial rewards for victories
Continent/swag.bas-addEntreeTresor()awards prize moneyContinent/swag.bas- Financial rewards inresolveSwagMatch()
-
Experience System: Teams gain experience
Continent/swag.bas- Experience gain inresolveSwagMatch()Continent/SWAG_TEAMStable -experiencefieldContinent/swag.bas- Experience calculations
-
Pariah Status (PDR): Outcast status with nations
Continent/Pactes.bas-PAC_EstParia()checks pariah statusContinent/Pactes.bas-PAC_setParia(),PAC_unsetParia()manage pariahContinent/PACTEStable - Stores pariah pacts (nature='PDR')
-
Non-Aggression Pacts (PNA): Non-aggression agreements
Continent/Pactes.bas-PAC_EstPNA()checks PNA statusContinent/Pactes.bas-PAC_setPNA(),PAC_unsetPNA()manage PNAContinent/PACTEStable - Stores PNA pacts (nature='PNG')
-
Vassal Pacts (PSV): Temporary vassal pacts after capture
Continent/Pactes.bas- PSV pact managementContinent/PACTEStable - Stores PSV pactsContinent/militaire.bas- PSV creation on capture
-
Pact Duration: Time-limited pacts
Continent/PACTEStable -dureefield stores durationContinent/Pactes.bas- Duration tracking and expiration
-
Pact Modification: Pacts modified on suzerain change
Continent/Pactes.bas-PAC_ModifPactesSurChangeSuzerain()functionContinent/militaire.bas- Calls pact modification inchangeSuzerain()
-
Pact Inheritance: Vassals inherit suzerain pacts
Continent/Pactes.bas-PAC_ModifPactesSurChangeSuzerain()inherits pactsContinent/Pactes.bas- PNA and Pariah inheritance logic
-
Pact Conflicts: Pacts can conflict with each other
Continent/Pactes.bas- Conflict detection inPAC_setPNA()Continent/Diplo.bas- Pact conflict resolution ingetDiploJoueur()
-
Multi-Server Support: Support for multiple server configurations
Continent/servers/directory - Server configuration files (continent-DEV.ini, continent-CONTIBOX1.ini)Continent/Parametres.bas- Server parameter managementContinent/cntSRV.frm- Server object withserverParamscollection
-
Configuration Files: INI-based configuration system
Continent/servers/*.ini- INI configuration filesContinent/Parametres.bas- Configuration loadingContinent/outils_serveur.bas-loadConfig()function
-
Database Connection: MySQL database connectivity
Continent/mysql.bas- MySQL connection managementContinent/outils_serveur.bas-ServerConnect()functionContinent/AccesBDD.bas- Database access functionsContinent/cntSRV.frm-mySqlconnection object
-
Logging System: Comprehensive logging system
Continent/server_tools.bas-Logit()function for loggingContinent/server_tools.bas-LogNoFile()for console loggingContinent/logs/directory - Log filesContinent/cntSRV.frm-logfileandlogfileerrproperties
-
Error Handling: Error handling and reporting
Continent/Erreur.bas- Error handling moduleContinent/cntSRV.frm-safemodeerror handlingContinent/outils.bas- Error handling functions
-
Message System: In-game messaging system
Continent/server_tools.bas-generateMessageFor()creates messagesContinent/MESSAGES_INTENDANTtable - Stores messagesContinent/cntSRV.frm- Message generation
-
Gazette System: News and announcements system
Continent/server_tools.bas-AddEncartGazette()adds gazette entriesContinent/ENCARTS_GAZETTEtable - Gazette entriesContinent/cntSRV.frm- Gazette management
-
Shadow Log: Secret log of player actions
Continent/server_tools.bas-shadowLog()functionContinent/LOG_OMBREtable - Shadow log entriesContinent/militaire.bas,Continent/Diplomatie.bas- Shadow log usage
-
Chronicles: Historical record of fief events
Continent/server_tools.bas-chroniclesLog()functionContinent/HISTOIREtable - Chronicles storageContinent/cntSRV.frm- Chronicle generation
-
Rank System: Player rank and title system
Continent/server_tools.bas-getRang(),getRangNiveau(),augmenteRang()functionsContinent/VILLAGEStable -rangfieldContinent/server_tools.bas- Rank calculations
-
Reputation System: Reputation tracking and effects
Continent/VILLAGEStable -reputationfieldContinent/server_tools.bas- Reputation managementContinent/militaire.bas,Continent/production.bas- Reputation effects
-
Database Dumps: Database backup and restore tools
Continent/basedump.bas- Database dump functionsContinent/restore_tools.bas- Database restore functionsContinent/restore.frm- Restore interfaceContinent/dumpthisbase.frm- Dump interface
-
Server Tools: Various server administration tools
Continent/server_tools.bas- Server utility functionsContinent/cntSRV.frm- Server administration interfaceContinent/outils_serveur.bas- Server tools
-
Map Tools: Map generation and manipulation tools
Continent/carte.bas- Map manipulation functionsContinent/map/directory - Map filesContinent/cntSRV.frm- Map generation tools
-
Image Generation: Automatic image generation for units
Continent/militaire.bas-generateTroupePic()generates unit imagesContinent/gdi/directory - GDI+ image processingContinent/pics/directory - Generated imagesContinent/pics/gentroupespics.bat- Batch image generation
-
Peons: Worker population
Continent/VILLAGEStable -peonsfieldContinent/production.bas,Continent/Construction.bas- Peon usageContinent/cntSRV.frm- Peon management
-
Bourgeois: Middle class population
Continent/VILLAGEStable -bourgeoisfieldContinent/evenements.bas- Bourgeois effects on eventsContinent/production.bas- Bourgeois effects on production
-
Population Growth: Population growth mechanics
Continent/cntSRV.frm- Population growth calculationsContinent/VILLAGEStable - Population tracking
-
Population Morale: Morale system affecting various mechanics
Continent/VILLAGEStable -moralfieldContinent/production.bas- Morale affects productionContinent/Construction.bas- Morale affects construction speedContinent/militaire.bas- Morale affects combat power
-
Population Effects: Population affects production, defense, etc.
Continent/production.bas- Population effects on productionContinent/militaire.bas- Population effects on defenseContinent/cntSRV.frm- Population calculations
-
Weather Types: Different weather conditions
Continent/evenements.bas- Weather event typesContinent/cntSRV.frm- Weather management
-
Weather Effects: Weather affects production, naval operations, fires
Continent/evenements.bas- Weather effects on various systemsContinent/production.bas- Weather effects on productionContinent/militaire.bas- Weather effects on naval operations
-
Seasonal Cycles: Seasonal changes (winter, spring, etc.)
Continent/evenements.bas- Seasonal event generationContinent/cntSRV.frm- Seasonal cycle management
-
Winter Effects: Winter reduces certain activities
Continent/evenements.bas- Winter event effectsContinent/production.bas- Winter reduces productionContinent/production.bas-processAbattageTask()interrupted by winter
-
Castles: Main player buildings
Continent/CONSTRUCTIONStable - Castle buildingsContinent/Construction.bas- Castle constructionContinent/Fief.bas- Castle management
-
Portals: Teleportation portals
Continent/CONSTRUCTIONStable - Portal buildingsContinent/militaire.bas- Portal teleportation logic
-
Arenas: Swag competition arenas
Continent/CONSTRUCTIONStable - Arena buildingsContinent/swag.bas- Arena requirements for swag
-
Palaces: Required for heroes
Continent/CONSTRUCTIONStable - Palace buildingsContinent/militaire.bas- Palace requirements for heroes
-
Cathedrals: Special religious buildings
Continent/CONSTRUCTIONStable - Cathedral buildingsContinent/guildes.bas- Cathedral effects on church guildContinent/cntSRV.frm- Cathedral effects on guild levels
-
Halls: Special gathering buildings
Continent/CONSTRUCTIONStable - Hall buildingsContinent/guildes.bas- Hall effects on commerce guildContinent/cntSRV.frm- Hall effects on guild levels
-
Food: Basic food resource
Continent/TYPE_DENREEStable - Food resource typeContinent/INVENTAIREtable - Food storageContinent/production.bas- Food production
-
Wood: Construction material
Continent/TYPE_DENREEStable - Wood resource typeContinent/INVENTAIREtable - Wood storageContinent/production.bas- Wood production (logging)
-
Stone: Construction material
Continent/TYPE_DENREEStable - Stone resource typeContinent/INVENTAIREtable - Stone storageContinent/production.bas- Stone production (mining)
-
Metal: Crafting material
Continent/TYPE_DENREEStable - Metal resource typeContinent/INVENTAIREtable - Metal storageContinent/production.bas- Metal production (mining)
-
Tools: Required for most activities
Continent/TYPE_DENREEStable - Tools resource type (denree=5)Continent/INVENTAIREtable - Tools storageContinent/Construction.bas,Continent/production.bas- Tool consumption
-
Medicine: Disease treatment
Continent/TYPE_DENREEStable - Medicine resource type (denree=10)Continent/INVENTAIREtable - Medicine storageContinent/evenements.bas- Medicine consumption for disease treatment
-
Animals: Livestock resources
Continent/TYPE_DENREEStable - Animal resource typesContinent/INVENTAIREtable - Animal storageContinent/production.bas- Animal production and breeding
-
Special Items: Artifacts and magical items
Continent/guildes.bas- Artifact managementContinent/MARCHE_ARTEFACTStable - Artifact marketContinent/guildes.bas-getObjetValue()calculates artifact values
-
MySQL Database: Primary database system
Continent/mysql.bas- MySQL connection managementContinent/outils_serveur.bas-ServerConnect()uses MySQL ODBC 5.1 DriverContinent/AccesBDD.bas- Database access functions
-
ODBC Connection: Database connectivity via ODBC
Continent/outils_serveur.bas-ServerConnect()establishes ODBC connectionContinent/cntSRV.frm-mySqlconnection object
-
SQL Execution: Dynamic SQL query execution
Continent/outils_serveur.bas-executeSQL()executes queriesContinent/AccesBDD.bas-BDD_ExecuteSQL()functionContinent/server_tools.bas-getVal(),setVal()wrapper functions
-
Recordset Management: ADO recordset handling
Continent/AccesBDD.bas- ADO recordset functionsContinent/outils_serveur.bas- Recordset managementContinent/Fief.bas-LeRecordsetVillagecached recordset
-
Binary Map Files: Map stored in binary format
Continent/map/layer0.map- Layer 0 (normalization base)Continent/map/layer1.map- Layer 1 (terrain)Continent/carte.bas-Get,Putstatements for binary accessContinent/carte.bas- Binary file operations
-
Layer System: Multiple map layers
Continent/carte.bas- Layer 1 (terrain), Layer 2 (objects/sprites), Layer 3 (territory)Continent/carte.bas-getMap(),updateMap()work with layersContinent/map/directory - Separate files per layer
-
Map Compression: Efficient map data storage
Continent/carte.bas- Binary format for efficient storageContinent/map/directory - Compressed map files
-
GDI+ Integration: Image manipulation using GDI+
Continent/gdi/directory - GDI+ wrapper classesContinent/gdi/GDIPlus.cls- GDI+ main classContinent/gdi/Graphics.cls,Continent/gdi/Image.cls- GDI+ classesContinent/gdi/GDIPlusWrapper.dll- GDI+ wrapper DLL
-
Sprite Generation: Automatic sprite generation
Continent/militaire.bas-getTroupeSprite()generates spritesContinent/militaire.bas- Sprite calculation based on composition and nation
-
Unit Image Generation: Dynamic unit image creation
Continent/militaire.bas-generateTroupePic()creates unit imagesContinent/gdi/directory - GDI+ used for image generationContinent/pics/gentroupespics.bat- Batch image generation script
-
FTP Support: FTP library for file transfers
Continent/ftplib/directory - FTP client libraryContinent/ftplib/CFtpClient.cls- FTP client classContinent/ftplib/CSocket.cls- Socket support for FTP
- This is a comprehensive list based on code analysis of the Continent project
- Some features may have dependencies or interactions not fully detailed here
- The Renaissance project is a refactoring, so implementation details may differ
- Some features may be simplified, enhanced, or removed in the refactoring process