From 703bc6114e5c2c5e9f670a90f0c9a48d850ab0b7 Mon Sep 17 00:00:00 2001 From: ADAM David Alan Martin Date: Wed, 24 Apr 2024 15:52:53 -0400 Subject: [PATCH] Some of my hacky system generation playing. I'll probably roll all this back, but now I can hack around with putting new starbases in systems, playing with the map, etc. Then I might be able to look into auto-gen stuff! --- sc2/src/uqm/plandata.c | 24 ++++++++++++++++++++---- sc2/src/uqm/planets/Makeinfo | 4 ++-- sc2/src/uqm/planets/generate/genchmmr.c | 7 +++++-- sc2/src/uqm/planets/generate/gensol.c | 2 +- sc2/src/uqm/planets/generate/gensyr.c | 16 +++++++++------- sc2/src/uqm/planets/generate/genwreck.c | 8 +++++--- 6 files changed, 42 insertions(+), 19 deletions(-) diff --git a/sc2/src/uqm/plandata.c b/sc2/src/uqm/plandata.c index 3a3d7308c..5f42f0440 100644 --- a/sc2/src/uqm/plandata.c +++ b/sc2/src/uqm/plandata.c @@ -32,6 +32,8 @@ STAR_DESC starmap_array[] = // alien presence | | // owner (unused) | | | // x, y star type colour | | | | + +#if 0 {{5007, 35}, MAKE_STAR (DWARF_STAR, GREEN_BODY, -1), 0, 6, 74}, {{ 708, 41}, MAKE_STAR (DWARF_STAR, WHITE_BODY, -1), 0, 7, 91}, {{4714, 78}, MAKE_STAR (DWARF_STAR, GREEN_BODY, -1), 0, 7, 74}, @@ -114,7 +116,10 @@ STAR_DESC starmap_array[] = {{ 416, 1301}, MAKE_STAR (DWARF_STAR, RED_BODY, -1), 0, 0, 120}, {{3958, 1354}, MAKE_STAR (DWARF_STAR, BLUE_BODY, -1), 0, 2, 89}, {{4000, 1363}, MAKE_STAR (DWARF_STAR, ORANGE_BODY, -1), 0, 1, 89}, - {{1752, 1450}, MAKE_STAR (DWARF_STAR, YELLOW_BODY, -1), SOL_DEFINED, 0, 129}, +#endif + + +#if 0 {{2187, 1500}, MAKE_STAR (DWARF_STAR, BLUE_BODY, -1), 0, 0, 127}, {{1806, 1507}, MAKE_STAR (GIANT_STAR, WHITE_BODY, -1), 0, 0, 128}, {{5708, 1520}, MAKE_STAR (DWARF_STAR, ORANGE_BODY, -1), 0, 5, 72}, @@ -146,7 +151,6 @@ STAR_DESC starmap_array[] = {{5458, 1916}, MAKE_STAR (DWARF_STAR, YELLOW_BODY, -1), 0, 0, 119}, {{1048, 1919}, MAKE_STAR (DWARF_STAR, GREEN_BODY, -1), 0, 3, 85}, {{3678, 1926}, MAKE_STAR (DWARF_STAR, BLUE_BODY, -1), 0, 2, 99}, - {{3345, 1931}, MAKE_STAR (DWARF_STAR, YELLOW_BODY, -1), START_COLONY_DEFINED, 0, 98}, {{8187, 1937}, MAKE_STAR (DWARF_STAR, WHITE_BODY, -1), 0, 4, 7}, {{3352, 1940}, MAKE_STAR (SUPER_GIANT_STAR, WHITE_BODY, -1), MELNORME2_DEFINED, 0, 97}, {{ 977, 1953}, MAKE_STAR (DWARF_STAR, YELLOW_BODY, -1), 0, 4, 85}, @@ -441,7 +445,6 @@ STAR_DESC starmap_array[] = {{3270, 8000}, MAKE_STAR (DWARF_STAR, YELLOW_BODY, -1), 0, 8, 53}, {{6104, 8000}, MAKE_STAR (DWARF_STAR, ORANGE_BODY, -1), 0, 6, 35}, {{ 687, 8000}, MAKE_STAR (DWARF_STAR, ORANGE_BODY, -1), 0, 2, 59}, - {{ 562, 8000}, MAKE_STAR (GIANT_STAR, GREEN_BODY, -1), URQUAN_WRECK_DEFINED, 1, 59}, {{5645, 8020}, MAKE_STAR (DWARF_STAR, BLUE_BODY, -1), 0, 2, 35}, {{1395, 8041}, MAKE_STAR (DWARF_STAR, RED_BODY, -1), 0, 4, 58}, {{8229, 8041}, MAKE_STAR (DWARF_STAR, RED_BODY, -1), 0, 2, 43}, @@ -533,7 +536,20 @@ STAR_DESC starmap_array[] = {{1020, 9937}, MAKE_STAR (DWARF_STAR, RED_BODY, -1), 0, 7, 27}, {{ 83, 9979}, MAKE_STAR (DWARF_STAR, RED_BODY, -1), 0, 6, 27}, {{1937, 9979}, MAKE_STAR (DWARF_STAR, RED_BODY, -1), 0, 1, 103}, - {{4395, 9979}, MAKE_STAR (DWARF_STAR, GREEN_BODY, -1), 0, 0, 52}, +#endif + + {{1776, 1395}, MAKE_STAR (DWARF_STAR, YELLOW_BODY, -1), START_COLONY_DEFINED, 0, 98}, + + {{1777, 1405}, MAKE_STAR (DWARF_STAR, YELLOW_BODY, -1), 0, 0, 99}, + + // ADAM ADDED + {{1703, 1432}, MAKE_STAR (GIANT_STAR, GREEN_BODY, -1), 0, 0, 171}, + {{1752, 1450}, MAKE_STAR (DWARF_STAR, YELLOW_BODY, -1), SOL_DEFINED, 0, 129}, + + + {{1751, 1479}, MAKE_STAR (GIANT_STAR, GREEN_BODY, -1), URQUAN_WRECK_DEFINED, 1, 59}, + {{1707, 1501}, MAKE_STAR (DWARF_STAR, GREEN_BODY, -1), 0, 0, 52}, + {{MAX_X_UNIVERSE << 1, MAX_Y_UNIVERSE << 1}, 0, 0, 0, 0}, diff --git a/sc2/src/uqm/planets/Makeinfo b/sc2/src/uqm/planets/Makeinfo index da4026f9a..b5f3104d0 100644 --- a/sc2/src/uqm/planets/Makeinfo +++ b/sc2/src/uqm/planets/Makeinfo @@ -1,7 +1,7 @@ uqm_SUBDIRS="generate" uqm_CFILES="calc.c cargo.c devices.c gentopo.c lander.c orbits.c - oval.c pl_stuff.c planets.c plangen.c pstarmap.c report.c - roster.c scan.c solarsys.c surface.c" + oval.c pl_stuff.c planets.c plangen.c report.c + roster.c scan.c solarsys.c surface.c pstarmap.c" uqm_HFILES="elemdata.h generate.h lander.h lifeform.h plandata.h planets.h scan.h solarsys.h sundata.h" diff --git a/sc2/src/uqm/planets/generate/genchmmr.c b/sc2/src/uqm/planets/generate/genchmmr.c index d60f3cf3b..1a1436bbb 100644 --- a/sc2/src/uqm/planets/generate/genchmmr.c +++ b/sc2/src/uqm/planets/generate/genchmmr.c @@ -28,6 +28,8 @@ #include "../../state.h" #include "libs/mathlib.h" +#include "../../starbase.h" + static bool GenerateChmmr_generatePlanets (SOLARSYS_STATE *solarSys); static bool GenerateChmmr_generateMoons (SOLARSYS_STATE *solarSys, PLANET_DESC *planet); @@ -133,6 +135,7 @@ GenerateChmmr_generateOrbital (SOLARSYS_STATE *solarSys, PLANET_DESC *world) else if (matchWorld (solarSys, world, 1, 0)) { /* Starbase */ +#if 0 LoadStdLanderFont (&solarSys->SysInfo.PlanetInfo); solarSys->SysInfo.PlanetInfo.DiscoveryString = CaptureStringTable (LoadStringTable (CHMMR_BASE_STRTAB)); @@ -143,8 +146,8 @@ GenerateChmmr_generateOrbital (SOLARSYS_STATE *solarSys, PLANET_DESC *world) solarSys->SysInfo.PlanetInfo.DiscoveryString)); solarSys->SysInfo.PlanetInfo.DiscoveryString = 0; FreeLanderFont (&solarSys->SysInfo.PlanetInfo); - - return true; +#endif + return PrepareToVisitStarBase(); } GenerateDefault_generateOrbital (solarSys, world); diff --git a/sc2/src/uqm/planets/generate/gensol.c b/sc2/src/uqm/planets/generate/gensol.c index ecb3101a0..ae41698a9 100644 --- a/sc2/src/uqm/planets/generate/gensol.c +++ b/sc2/src/uqm/planets/generate/gensol.c @@ -139,7 +139,7 @@ GenerateSol_generatePlanets (SOLARSYS_STATE *solarSys) angle = NORMALIZE_ANGLE (FULL_CIRCLE - angle); break; case 2: /* EARTH */ - pCurDesc->data_index = WATER_WORLD ; //| PLANET_SHIELDED; + pCurDesc->data_index = WATER_WORLD | PLANET_SHIELDED; pCurDesc->radius = EARTH_RADIUS; pCurDesc->NumPlanets = 2; break; diff --git a/sc2/src/uqm/planets/generate/gensyr.c b/sc2/src/uqm/planets/generate/gensyr.c index 112387949..74e64c5b4 100644 --- a/sc2/src/uqm/planets/generate/gensyr.c +++ b/sc2/src/uqm/planets/generate/gensyr.c @@ -20,6 +20,8 @@ #include "../planets.h" #include "../../comm.h" +#include "../../starbase.h" + static bool GenerateSyreen_generatePlanets (SOLARSYS_STATE *solarSys); static bool GenerateSyreen_generateMoons (SOLARSYS_STATE *solarSys, PLANET_DESC *planet); @@ -78,21 +80,21 @@ GenerateSyreen_generateOrbital (SOLARSYS_STATE *solarSys, PLANET_DESC *world) { if (matchWorld (solarSys, world, 0, MATCH_PLANET)) { + InitCommunication (SYREEN_CONVERSATION); /* Syreen home planet */ - GenerateDefault_generateOrbital (solarSys, world); + //GenerateDefault_generateOrbital (solarSys, world); - solarSys->SysInfo.PlanetInfo.SurfaceTemperature = 19; - solarSys->SysInfo.PlanetInfo.Tectonics = 0; - solarSys->SysInfo.PlanetInfo.Weather = 0; - solarSys->SysInfo.PlanetInfo.AtmoDensity = EARTH_ATMOSPHERE * 9 / 10; + //solarSys->SysInfo.PlanetInfo.SurfaceTemperature = 19; + //solarSys->SysInfo.PlanetInfo.Tectonics = 0; + //solarSys->SysInfo.PlanetInfo.Weather = 0; + //solarSys->SysInfo.PlanetInfo.AtmoDensity = EARTH_ATMOSPHERE * 9 / 10; return true; } if (matchWorld (solarSys, world, 0, 0)) { /* Starbase */ - InitCommunication (SYREEN_CONVERSATION); - return true; + return PrepareToVisitStarBase(); } GenerateDefault_generateOrbital (solarSys, world); diff --git a/sc2/src/uqm/planets/generate/genwreck.c b/sc2/src/uqm/planets/generate/genwreck.c index 05e956e29..ef1be9f85 100644 --- a/sc2/src/uqm/planets/generate/genwreck.c +++ b/sc2/src/uqm/planets/generate/genwreck.c @@ -32,6 +32,8 @@ static COUNT GenerateWreck_generateEnergy (const SOLARSYS_STATE *, static bool GenerateWreck_pickupEnergy (SOLARSYS_STATE *solarSys, PLANET_DESC *world, COUNT whichNode); +#define CRASH_PLANET 6 + const GenerateFunctions generateWreckFunctions = { /* .initNpcs = */ GenerateDefault_initNpcs, @@ -53,7 +55,7 @@ const GenerateFunctions generateWreckFunctions = { static bool GenerateWreck_generateOrbital (SOLARSYS_STATE *solarSys, PLANET_DESC *world) { - if (matchWorld (solarSys, world, 6, MATCH_PLANET)) + if (matchWorld (solarSys, world, CRASH_PLANET, MATCH_PLANET)) { LoadStdLanderFont (&solarSys->SysInfo.PlanetInfo); solarSys->PlanetSideFrame[1] = @@ -76,7 +78,7 @@ static COUNT GenerateWreck_generateEnergy (const SOLARSYS_STATE *solarSys, const PLANET_DESC *world, COUNT whichNode, NODE_INFO *info) { - if (matchWorld (solarSys, world, 6, MATCH_PLANET)) + if (matchWorld (solarSys, world, CRASH_PLANET, MATCH_PLANET)) { return GenerateDefault_generateArtifact (solarSys, whichNode, info); } @@ -88,7 +90,7 @@ static bool GenerateWreck_pickupEnergy (SOLARSYS_STATE *solarSys, PLANET_DESC *world, COUNT whichNode) { - if (matchWorld (solarSys, world, 6, MATCH_PLANET)) + if (matchWorld (solarSys, world, CRASH_PLANET, MATCH_PLANET)) { assert (whichNode == 0);