Stop Shipping Production Worlds on Terrain3D 1.0 After 1.1 - 2026
![]()
If a terrain3d 1.1 upgrade thread opened because someone forked a new outdoor vertical slice on 1.0.2 “because the jam already knows that version,” the first sentence is usually wrong. People write “1.1 is just polish,” “we will AssetLib-update after Gold,” or “API changes do not matter if we only sculpt.” After October 30, 2026, that folklore is expensive. TokisanGames shipped Terrain3D v1.1.0 with an explicit note: Changes to the API between 1.0 and 1.1 — plus oceans, C# bindings, displacement, and mobile knobs your 1.0 seed will not grow into cleanly.
The capability map lives on What Godot Terrain3D 1.1.0 Changed for Indies - 2026. Official install/upgrade steps live in Installation & Upgrade. This page is the refusal. Stop shipping new production outdoor worlds on Terrain3D 1.0 after 1.1. Freeze an existing 1.0 title for a near-term milestone if you must — do not seed the next paid world on the old surface.
Direct answer: Print the Terrain3D version in boot or Project Settings. If a new production outdoor branch still pins 1.0.x, latch VERSION_REFUSED, upgrade to 1.1.0+ on Godot 4.5–4.8+, follow upgrade docs, smoke the largest outdoor scene and instancers, then continue art. If you are mid-Gold on a proven 1.0 build with <2 weeks to ship, latch MILESTONE_FREEZE with an owner and a dated 1.1 branch — do not pretend the freeze is a forever strategy.
Why this matters now
1.1 is not a quiet point release. The GitHub notes call out 380+ updates, Godot 4.8 support, generated C# bindings, an ocean mesh, texture displacement, AO packed normals, Max Regions, and an instancer move toward RenderingServer. Community writeups (GameFromScratch, IndieTooling) treat it as a feature beat. Seeding a new world on 1.0 means you will either (a) upgrade mid-content with API friction, or (b) forever miss the 1.1 tooling surface while Discord assumes everyone is current.
The failure mode is classic addon debt: lead laptop on 1.1 from AssetLib, contractor still on a vendored 1.0 zip, scene files diverge, “Terrain3D is unstable this week” becomes the stand-up story. It is not unstable. It is version wallpaper.
Time and prerequisites
Plan 60 to 120 minutes for a refuse-and-smoke pass on a small outdoor project — not a water art rewrite.
| You need | You do not need |
|---|---|
| Godot 4.5–4.8+ | Tessellation 6 on day one |
Permission to bump addons/terrain_3d |
A finished ocean shader |
| Backup of terrain data per upgrade docs | A full C# rewrite tonight |
| One outdoor scene smoke path | Proof that “mobile just works” |
Beginners can print the version in five minutes. A tech lead owns the pin in repo. A producer owns the rule that no new outdoor epic starts on 1.0 after Oct 30.
Who this refusal is for
| Reader | Run it when… |
|---|---|
| Beginners | Tutorial projects still download “whatever AssetLib showed last month” |
| Developers | You need a fail-closed gate before blaming clipmaps |
| Creators | Discord argues “1.0 is fine for the new open world” |
| Companies | Diligence asks which Terrain3D major the ship branch uses |
Platform basics: Godot guide. Plugin context: 16 free Godot 4 plugins. This URL owns the Stop — not the map, not the checks listicle, not the ocean worksheet.
Non-repetition
| URL | Job |
|---|---|
| Terrain3D v1.1.0 | Primary release + API note |
| Installation & Upgrade | Official upgrade path |
| Terrain3D 1.1 what-changed | Capability map — not this refusal |
| Platforms docs | Mobile/web honesty |
| Displacement docs | Cost of detail |
| Asset Library 5572 | Install channel |
| 16 free Godot plugins | Roundup context |
| World Machine spike | External DCC — not addon version |
| Godot guide | Engine hub |
| 25 Discords | Paste channel |
| Courses | Learning ladder |
| This URL | Stop seeding new worlds on 1.0 |
The habit this Stop refuses
Five sentences keep showing up in Godot outdoor channels. Each one skips the version print.
- “1.1 is just polish.” Release notes disagree — API changes + major features.
- “We’ll upgrade after the jam.” The jam seeds the production world. Seed on 1.1 or schedule a dated upgrade branch.
- “Only the lead needs 1.1.” One 1.0 seat re-saves data assumptions and poisons the shared project.
- “We don’t use oceans or C#, so 1.0 is fine.” API and instancer changes still hit GDScript sculpt/paint pipelines.
- “AssetLib will fix it silently.” Follow Installation & Upgrade; silent hope is not a migrate plan.
A quieter sixth habit: pin 1.0 in .gitignore folklore while CI downloads latest — humans and pipeline disagree. The refusal treats them as one fleet.
Refuse ladder
Use one code on the ticket. Do not invent a seventh to sound busy.
| Code | You may say this | You may not say this |
|---|---|---|
VERSION_REFUSED |
New production outdoor branch still on 1.0.x | “Terrain3D is abandoned” |
API_UNSMOKED |
1.1 installed but outdoor scene not walked | “Upgrade always breaks saves” |
FLEET_DRIFT |
Seats disagree on 1.0 vs 1.1 | “Roaming versions are fine” |
MILESTONE_FREEZE |
Near-term Gold stays on proven 1.0 with owner + dated 1.1 branch | “We never upgrade” |
MOBILE_CLAIM_BLOCKED |
Store mobile claim without Platforms + 1.1 Max Regions lab | “1.0 mobile is the same” |
DISPLACE_UNBUDGETED |
Tessellation cranked without FPS note | “Detail is free in 1.1” |
FLOOR_MET |
New worlds on 1.1.0+; smoke attached | “We will never see terrain bugs again” |
Discord paste: “Stop seeding new worlds on Terrain3D 1.0 after 1.1. Print the version. Upgrade or dated freeze.”
What the release actually said (read before you argue)
From v1.1.0-stable and docs:
| Fact | Meaning for this Stop |
|---|---|
| API changes 1.0 → 1.1 | New code should target 1.1 |
| Godot 4.5–4.8+ | Match engine floor |
| C# bindings in releases | .NET teams stop rolling wrappers |
| Ocean mesh + example shaders | Coastline prototypes belong on 1.1 |
| Displacement + tessellation | Optional costly detail — still a 1.1 surface |
| Max Regions / mobile notes | Mobile planning wants 1.1 knobs |
| Install & Upgrade docs exist | AssetLib click ≠ migrate receipt |
If your appeal is “our sculpt brushes feel the same,” you are arguing past the product’s versioning.
Excuse ladder
| Excuse | Why it fails | What to do instead |
|---|---|---|
| “1.0 shipped other games” | Past ships ≠ new seed policy | New epics on 1.1 |
| “Upgrade risks the demo Friday” | Fair — use MILESTONE_FREEZE |
Dated 1.1 branch after demo |
| “We vendored 1.0 into the zip forever” | Forever is the bug | Replace addon; smoke |
| “Contractors cloned old repo” | Fleet drift | Version print in CI |
| “We only need heightmaps from World Machine” | Engine addon still versions | WM spike ≠ Terrain3D pin |
| “Ocean isn’t in our GDD” | API/instancer still moved | Upgrade for the boring reasons |
Audience ramps
Beginner path (thirty minutes)
- Open Project → Project Settings → Plugins; note Terrain3D enabled.
- Check
addons/terrain_3dagainst v1.1.0. - If 1.0 and this is a new outdoor project → upgrade per docs.
- Paste Discord refuse line.
- Do not start a second biome folder until version is 1.1.x.
Developer path (one evening)
git checkout -b chore/terrain3d-1-1.- Backup terrain data; replace addon with 1.1.0.
- Fix compile/API breaks from the change note.
- Walk the largest outdoor scene; re-smoke foliage instancer.
- Pin version in README + boot log.
- Optionally enable ocean on a throwaway scene — do not block upgrade on water art.
- Leave tessellation at 0 until measured.
- Cross-link what-changed.
- Latch
FLOOR_METwith screenshots. - Schedule checks/worksheet siblings for scorecard/receipt (queued).
Creator Monday checklist
- [ ] Version printed for the outdoor branch.
- [ ] New production world is on 1.1.0+ or
MILESTONE_FREEZEdocumented. - [ ] No silent 1.0 contractor seats.
- [ ] Upgrade docs followed (not hope).
- [ ] Discord paste sent.
- [ ] CapEx four-liner ready for partners.
Opinion spine
| Folklore | After this Stop |
|---|---|
| 1.0 is forever fine for new worlds | New seeds → 1.1 |
| Upgrade later | Upgrade now or dated freeze |
| Lead’s machine defines the fleet | Every seat prints version |
| Features we don’t use mean no API risk | API note still applies |
| AssetLib = migrate | Docs + smoke = migrate |
Quotable takeaway: Stop shipping new production worlds on Terrain3D 1.0 after 1.1 — seed on 1.1, or freeze 1.0 with an owner and a dated upgrade branch.
Failure modes
| Failure | Symptom | Fix |
|---|---|---|
| New epic on 1.0 | Missing 1.1 tools + future API pain | VERSION_REFUSED + upgrade |
| Mid-content surprise upgrade | Broken calls mid-biome | Upgrade before biome scale |
| Fleet drift | “Works on my PC” | CI version print |
| Fake freeze | No owner / no date | Invalid — rewrite freeze |
| Displacement day-one | FPS death blamed on “1.1 bad” | Tessellation 0 until lab |
| Mobile trailer on 1.0 PC settings | Store anger | Platforms + Max Regions on 1.1 |
CapEx four-liner (diligence zip cover)
- Scope — New outdoor production worlds on Terrain3D 1.1.0+ (Godot 4.5–4.8+).
- Cost — one upgrade smoke vs mid-content API migration.
- Evidence — version string + outdoor walk note + README pin.
- Owner — human who refuses new 1.0 seeds after Oct 30, 2026.
Worked example — refuse a new 1.0 open-world pitch
- Pitch: “Clone last year’s 1.0 template for the new zone.”
- Latch
VERSION_REFUSED. - Create project from 1.1.0 template / upgraded addon.
- Import height data if needed; smoke walk.
- Only then assign biome artists.
Worked example — honest milestone freeze
- Demo Friday on proven 1.0 build.
- Latch
MILESTONE_FREEZEwith producer name + date. - Open
chore/terrain3d-1-1the following Monday. - No new biomes land on the freeze branch after the demo.
- Merge when
FLOOR_MET.
Scheduling table
| When | Action |
|---|---|
| After Oct 30 | New outdoor seeds on 1.1 |
| Pre-Gold <2 weeks on 1.0 | Freeze with owner; no new biomes |
| Post-demo | Upgrade branch + smoke |
| Partner diligence | CapEx + version screenshot |
Red flags that mean “stop the 1.0 seed”
| Red flag | Latch | Next action |
|---|---|---|
| New epic folder created under a 1.0 template zip | VERSION_REFUSED |
Recreate on 1.1 before art hire |
| README still says “Terrain3D 1.0 recommended” | VERSION_REFUSED |
Edit README same day |
| Two seats print different majors | FLEET_DRIFT |
Align before any region paint |
| “We’ll fix API when we need oceans” | API_UNSMOKED |
Upgrade for API even without oceans |
| Mobile store page drafted on 1.0 PC capture | MOBILE_CLAIM_BLOCKED |
1.1 + Platforms lab first |
| Freeze ticket with no date/owner | invalid freeze | Rewrite or upgrade now |
These flags are cheaper than repainting three biomes after a forced mid-year upgrade.
What “production world” means in this Stop
This refusal is about shipping intent, not hobby sandboxes.
| Counts as production world | Does not (yet) |
|---|---|
| Vertical slice you will show partners | Throwaway “learn sculpt” scene |
| Paid DLC biome on the live title’s next content drop | Local experiment branch deleted in a week |
| Game jam entry you intend to steam-page | Tutorial clone you will never ship |
| Soft-funded prototype with a content freeze date | Classroom assignment with no store path |
If you are honest that the project is throwaway, 1.0 practice is fine — label it throwaway. The Stop fires when the folder quietly becomes the ship folder.
Upgrade smoke checklist (minimum)
Copy into the PR that bumps the addon:
- [ ] Godot version is 4.5–4.8+
- [ ] Addon replaced with 1.1.0+ from release or AssetLib
- [ ] Installation & Upgrade steps followed
- [ ] Project opens without script errors on terrain autoloads/nodes
- [ ] Largest outdoor scene loads
- [ ] 60-second character (or free cam) walk on sculpted ground
- [ ] Foliage/instancer density spot-check
- [ ] Terrain3D version string committed in README or
addonsnote - [ ] No tessellation experiment mixed into the smoke PR
If any box is unchecked, you have API_UNSMOKED, not FLOOR_MET.
Ninety-minute refuse evening
| Minute | Action |
|---|---|
| 0–10 | Print versions on all seats; Discord paste |
| 10–25 | Branch + backup + drop in 1.1.0 |
| 25–50 | Fix obvious API/script breaks |
| 50–75 | Outdoor walk + instancer spot-check |
| 75–85 | README pin + CapEx four-liner |
| 85–90 | Latch FLOOR_MET or honest HOLD on remaining errors |
Do not spend the evening designing foam. Foam is not the refuse.
Incident script — “Terrain broke after someone updated”
- Freeze commits that mix 1.0/1.1 data blindly.
- Print Terrain3D version on every seat.
- Classify
FLEET_DRIFTorAPI_UNSMOKED. - Align fleet to 1.1.0 (preferred) or documented freeze.
- Smoke outdoor path + instancer.
- Postmortem one-liner: who vendored which zip.
Company diligence — questions
| Partner question | Acceptable answer |
|---|---|
| Which Terrain3D major is on the ship branch? | 1.1.0+ with pin evidence |
| Why not 1.0? | API + feature beat after Oct 30; new seeds refused |
| Mobile claims? | Platforms lab on 1.1; Max Regions noted |
| Upgrade ownership? | Named human on CapEx line 4 |
Partners funding open-world scopes should treat a 1.0 pin after October 30 as a process smell, the same way they treat an unpinned engine minor. You are allowed a freeze; you are not allowed amnesia. Put the freeze ticket ID next to the version string in the diligence zip so nobody “forgets” the upgrade Monday.
Freeze vs refuse — decision card
| Situation | Code | Allowed next content? |
|---|---|---|
| New outdoor epic, calendar open | VERSION_REFUSED → upgrade |
Only after FLOOR_MET |
| Demo in 10 days on proven 1.0 | MILESTONE_FREEZE |
Bugfixes only; no new biomes |
| Freeze expired, still on 1.0 | Treat as VERSION_REFUSED |
Upgrade before next biome |
| 1.1 installed, never walked | API_UNSMOKED |
No marketing claims yet |
If the team cannot point to which row they are on, they are in folklore mode. Folklore mode is what this Stop exists to end. Print the card in the project channel once; react with the emoji that matches your row; then do the work that row demands before anyone paints another cliff. A reacted card plus a version screenshot beats another meeting about whether “1.1 feels necessary.” Necessity is already documented in the release notes; your job is compliance with a dated plan, not vibes about polish.
How this pairs with siblings
| Topic | Job |
|---|---|
| 1.1 what-changed | Capability map |
| This URL | Refusal |
| Queued 12 checks | Upgrade scorecard |
| Queued ocean worksheet | Fill-in evening receipt |
Do not paste this essay as proof. Paste a version string + smoke note.
Internal links
Map: Terrain3D 1.1 what-changed. Hub: Godot guide. Plugins: 16 free Godot 4 plugins. DCC cousin: World Machine spike. Resources: 25 Discords. Courses: /courses.
Key takeaways
- Terrain3D 1.1.0 shipped Oct 30, 2026 with API changes.
- Stop seeding new production outdoor worlds on 1.0.
- Near-term Gold may use
MILESTONE_FREEZE— not forever 1.0. - Print the version on every seat.
- Follow Installation & Upgrade — not silent AssetLib hope.
- Smoke outdoor scenes + instancers after upgrade.
- Oceans/C#/displacement are reasons to prefer 1.1 — API is enough alone.
- Fleet drift is a refuse code, not a personality clash.
- Displacement is optional; do not blame 1.1 for unbudgeted tessellation.
- Mobile claims need Platforms + 1.1 knobs.
- CapEx four-liner belongs in diligence zips.
- Quotable: seed on 1.1, or freeze 1.0 with owner and date.
- This URL owns the Stop — not the map/checks/worksheet.
- World Machine exports do not replace the addon pin.
- Re-read the GitHub release when you argue.
FAQ
Should every project upgrade immediately?
New outdoor production worlds: yes, target 1.1.0+. Existing near-ship 1.0 titles may freeze briefly with an owner.
Where is the official upgrade guide?
What is the primary keyword this Stop answers?
terrain3d 1.1 upgrade — refuse staying on 1.0 for new worlds.
Does this ban 1.0 forever?
No. It bans new production seeds on 1.0 after 1.1 without a dated freeze exception.
Capability map?
What Godot Terrain3D 1.1.0 Changed for Indies - 2026
Release notes?
What refuse code for a new 1.0 open world?
VERSION_REFUSED
What about tutorials still on 1.0?
Update the template; do not clone stale jam zips into paid work.
Sources
- Terrain3D v1.1.0 (GitHub)
- Installation & Upgrade (ReadTheDocs)
- Platforms · Displacement
- Godot Asset Library — Terrain3D