Table to contents for this article!
Recently i dipped my toes into Battletech, I know, it’s a lot of number crunching and calculations. I do not understand myself most of the things. But, things can get better! I bring you BattleTech Character Generator! <3
What Character Generator?
Lately I was toying with CozyVTT. It is Virtual Tabletop project. Fully OpenSource and free. Before I was trying to work with FoundryVTT, but I found it over complicated and annoying to deal with.
My biggest issue with FoundryVTT was, that it was quite complicated for me to modify and add new features to it. I’m no code expert, but with help of LLM, I was able to modify CozyVTT to be quite good character generator for BattleTech.
Maybe my brain got lazy, as I’m getting older, but I always got bored during calculating stats. All those traits and attributes old fashioned way. Excel? Hell naw!
So, I made my own Battletech character generator, where you can click your character rather easily. Tt checks things for you and you can even modify character sheet based on game you are playing.
The whole thing is around BattleTech: Time of War, so if you are playing this book, this might get handy for you.
Warning
I must warn you though, this is not even ALPHA release. I created this generator for my friends and for myself, so expect bugs. Also, if I will see you guys doing bad stuff with it, I will turn it private again and no BattleTech character generator for you! 🙁
There is even possible to play campaign in it like in any other VTT, I added hexes support, which is not in vanilla CozyVTT and some sample mechs into NPCs …,but it’s far from finished. Now mainly, it’s just character generator.
NOTE: After register I need to approve you, if your approval doesn’t come within day or two, poke me on my emails. You can find them on the bottom of the Home Page.
After selecting modules, my stats didn’t show in sheet!
You need to first hit Apply build to sheet, and then Save.
Distribution
For those interested in hosting this Battletech Character generator on your own server, contact me, I can send you files (at least I will try).
Enjoy!
BattleTech Character generator showcase





Features included in Battletech Character Generator
1. BattleTech: A Time of War game system
Added a new native game system:
BATTLETECH_ATOW
Integrated across:
- campaign creation
- character creation/editing/viewing
- campaign invitations
- roster
- character-sheet selection
- game-system badges
- backend validation
- Prisma/database enum
- templates and rules helpers
This allows a campaign to behave as a dedicated AToW campaign instead of using a generic or D&D-oriented character system.
2. Full AToW character sheet
Added a dedicated BattleTech AToW character sheet with support for:
- Attributes
- Skills
- Traits
- equipment
- C-bills
- notes
- fatigue damage
- standard damage
- portrait
- character-specific BattleTech data
The sheet integrates with the existing CozyVTT character infrastructure rather than creating a separate character database.
3. AToW Life Module character creator
This was one of the largest additions.
Added a Life Module-based character generator implementing the AToW character creation structure.
Features include:
- Stage 0 universal package
- Stage 1 childhood/background
- Stage 2 education
- Stage 3 higher education / schools
- Stage 4 careers
- repeated Stage 4 modules
- flexible XP choices
- Skill Fields
- fixed and selectable skills
- opposed Trait cancellation
- age tracking
- automatic XP calculation
- 4,500 XP normal starting pool
- 5,000 XP Clan-warrior support
- automatic 850 XP universal package
- negative-Trait XP checks
- optimization of partially purchased Skill/Trait levels
- build validation
- persistent audit trail
The builder can apply the finished Life Module build directly back into the character sheet.
4. Expanded affiliation and faction backgrounds
Stage 0 affiliation choices were greatly expanded.
Added support for numerous subfactions under:
- Capellan Confederation
- Draconis Combine
- Free Worlds League
- Lyran Alliance
- Free Rasalhague Republic
- Major Periphery
- Minor Periphery
- Deep Periphery
- Terran factions
- invading Clans
- Homeworld Clans
Clan caste packages were also added, including things such as:
- MechWarrior
- Elemental
- Aerospace
- ProtoMech
- Scientist
- Technician
- Merchant
- Laborer
Each affiliation package can contribute its own XP, skills, traits and flexible allocations.
5. Master Schools and Officer Candidate School
Implemented AToW education rules for Master Schools, including correct Basic / Advanced / Special Fields.
Supported schools include:
- Technical College
- Trade School
- University
- Solaris Internship
- Police Academy
- Intelligence Operative Training
- Military Academy
- Military Enlistment
- Family Training
Also added an Officer Candidate School system with:
- eligibility checking
- required qualifying schools
- Basic + Advanced Field requirements
- Officer Training Field
- 550 XP base cost
- Field Cost calculation
- +1 year age effect
6. Age and aging system
Added AToW aging milestones:
21
31
41
51
61
71
81
91
101
The system can automatically apply:
- Attribute changes
- Trait changes
- age-based XP effects
- Clan reputation exceptions
- Slow Learner effects
- Glass Jaw effects
The character sheet shows a visible breakdown of what aging changed.
Existing characters can also be recalculated through the Life Module creator without permanently stacking aging effects repeatedly.
7. Character portrait system
Added portrait support to AToW characters.
Features:
- image upload
- crop
- resize
- conversion to 512×512 WebP
- portrait stored with character data
- larger portrait presentation on the character sheet
The same portrait can now also be reused by the platoon-management cards.
8. AToW equipment catalogue
Added a substantial personal equipment catalogue.
Features include:
- hundreds of equipment entries
- categories
- purchase/sell functionality
- C-bill tracking
- mass
- custom gear
- direct integration into the AToW character sheet
This gives AToW characters an actual equipment-management workflow rather than a freeform text field.
Tactical BattleTech additions
9. Hex-grid support
Vanilla CozyVTT originally centered around square grids.
Added:
square
hex-flat
hex-pointy
Support covers:
- map creation
- map editing
- grid preview
- map renderer
- backend persistence
- token snapping
Hex dimensions are treated consistently between visual rendering and snapping.
10. Hex-aware token snapping
Added proper geometric hex snapping rather than approximating a hex map with square coordinates.
Tokens now snap to the actual center of the nearest:
- flat-top hex
- pointy-top hex
This also works when placing tokens from campaign rosters and other map interactions.
11. Grid calibration
Added a major map-alignment system for scanned or pre-printed BattleTech maps.
The generated CozyVTT grid can now be calibrated independently over the background image.
Controls include:
- drag grid overlay
- X offset
- Y offset
- ±1 pixel nudging
- proportional scaling
- independent X/Y scaling
- aspect-ratio lock
- reset calibration
- calibration preview
Persistent map settings:
gridOffsetX
gridOffsetY
gridScaleX
gridScaleY
Most importantly, calibration affects both the displayed grid and snapping calculations, so tokens continue to land on the actual printed hexes.
Existing maps default to:
offset 0 / 0
scale 100% / 100%
so installation does not disturb old maps.
12. BattleTech unit facing
Added BattleTech-style facing to tokens.
Facing snaps to:
0°
60°
120°
180°
240°
300°
Features:
- visible facing arrow
- selected facing highlight
- Q/E keyboard rotation
- on-screen rotation controls
- persisted token rotation
- DM can rotate units
- players can rotate units they control
This was added specifically because facing changes are mechanically important in BattleTech.
13. Terrain marker system
Added BattleTech terrain directly to maps.
DMs can place terrain markers snapped to hexes and click them to open rules cards.
Current terrain includes:
- Clear
- Scrub
- Light Woods
- Heavy Woods
- Ultra-Heavy Woods
- Jungle
- Elevation 1
- Elevation 2
- Slope
- Blocking / Steep Slope
- Rough
- Rubble
- Very Shallow Water
- Depth 0 Water
- Depth 1+ Water
- Pavement / Road
- Urban / Building
- Ice
- Mud
- Sand
- Magma
Terrain is stored using normal CozyVTT object tokens with BattleTech metadata, so it did not require a separate terrain database.
Automatic LOS/movement penalties are not yet implemented; currently the markers primarily provide visual and rules-reference functionality.
BattleTech Unit Library
14. Generic BattleTech unit system
Vanilla CozyVTT’s NPC/unit creator was replaced for BattleTech campaigns with a dedicated BattleTech unit library.
Supported top-level types:
Infantry
Ground Vehicle
Aerospace
Mech
Examples of subtypes include:
Infantry
- Individual
- Squad
- Platoon
- Battle Armor
Ground Vehicle
- Tank
- Tracked
- Wheeled
- Hovercraft
- VTOL
- Naval
- Artillery
- Support
Aerospace
- Conventional Fighter
- Aerospace Fighter
- Small Craft
- DropShip
Mech
- BattleMech
- IndustrialMech
Unit records can contain:
- tonnage
- pilot
- Gunnery
- Piloting
- Walk / Run / Jump
- armor
- structure
- heat
- weapons
- ammunition
- status
Units can be placed onto maps and damaged/repaired through the existing CozyVTT creature/token infrastructure.
15. BattleTech preset browser
Added a searchable unit-preset browser.
Features:
- Custom Unit / Choose Preset
- search
- unit-type filtering
- tech-base filtering
- weight-class filtering
- tonnage filtering
- stat-block preview
- source book/page metadata
- clone preset into editable custom unit
No artwork from the sourcebooks was embedded.
16. TechManual example presets
Added a number of example units derived from TechManual worked examples, including:
- infantry
- BattleMechs
- Combat Vehicles
- aerospace units
These serve both as usable units and as examples for the Unit Library.
17. Record Sheets: Succession Wars BattleMechs
A very large number of BattleMech presets were transcribed from Record Sheets: Succession Wars.
The added catalogue includes:
- complete light BattleMech section, pages 5–72
- medium/heavy records from pages 73–160
- heavy records from pages 161–180
Examples include:
- Assassin
- Cicada
- Clint
- Blackjack
- Hatchetman
- Vindicator
- Centurion
- Crab
- Hunchback
- Trebuchet
- Dervish
- Griffin
- Shadow Hawk
- Wolverine
- Dragon
- Grand Dragon
- Lancelot
- Merlin
- Quickdraw
- Bombardier
- Catapult
- Exterminator
The preset catalogue now contains well over a hundred BattleMech variants.
Platoon management
18. Platoon Board
Added the beginning of a dedicated BattleTech Platoon Manager.
This is intentionally designed more like a card table than a traditional spreadsheet.
A character created in the AToW character generator becomes a soldier card automatically.
Cards can show:
- portrait
- character name
- relevant Skills
- status
- weapons
- squad assignment
Soldiers can be dragged between:
- available personnel
- squads
- HQ
- sections
- reserve
Groups can represent:
- Squad
- Section
- Fireteam
- Crew
- Support
- HQ
- Custom Group
The board layout and membership are persistent.
19. Platoon accessibility
Originally the Platoon Manager was reachable through:
Campaign → Roster → Platoons
It was then expanded so BattleTech platoons can also be accessed directly from the main Dashboard, making the feature much easier to reach.
20. Soldier status and casualties
Platoon members can carry states such as:
ACTIVE
WOUNDED
INCAPACITATED
KIA
MIA
EVACUATED
RESERVE
Only active soldiers contribute to the active combat calculations.
This means removing or incapacitating a soldier immediately changes platoon statistics without deleting the underlying AToW character.
21. Squad/platoon Skill averaging
The Platoon Manager calculates collective infantry skill values from the individual AToW characters.
This includes:
- Small Arms / shooting averages
- Anti-‘Mech / Climbing-derived values
- squad-level averages
- platoon-level averages
Missing required Skills are reported rather than silently inventing a value.
22. Infantry motive type
Platoons can now select their conventional infantry movement type:
Foot
Motorized
Jump
Mechanized Hover
Mechanized Tracked
Mechanized Wheeled
The choice affects:
- movement mode
- MP
- speed
- legal size
- terrain restrictions
- support-weapon movement penalties
- Anti-‘Mech eligibility
For example, conventional mechanized infantry cannot make Anti-‘Mech attacks, so the manager marks that appropriately.
23. Live platoon speed
The manager displays BattleTech movement and the corresponding AToW tactical distance.
Examples:
3 Ground MP
45 m / 5 seconds
or:
5 Hover MP
75 m / 5 seconds
Jump infantry separately displays jump and ground movement.
24. Support weapon system
Platoons can now be equipped with infantry support weapons.
Current support catalogue includes things such as:
- Support Machine Gun
- portable/semi-portable MGs
- Light Mortar
- Heavy Mortar
- Corean FarShot LRM
- infantry SRM launchers
- Light SRM
- Heavy SRM
- Light Recoilless Rifle
- Medium Recoilless Rifle
- Heavy Recoilless Rifle
- Infantry MRM
- LAW
- V-LAW
Support weapons are assigned to squads rather than just being freeform equipment.
25. Crew requirements and weapon legality
The manager understands that support weapons need operators and sometimes additional crew.
It checks things such as:
- crew requirement
- squad size
- support weapon limit
- whether enough personnel exist
- whether the current loadout is legal
An under-crewed support weapon can therefore be identified automatically.
26. Support weapons affect movement
TechManual support-weapon encumbrance rules are incorporated.
For example, depending on motive type, carrying the maximum secondary support weapons can:
- reduce MP
- make Foot infantry Move-or-Fire
- leave Mechanized Tracked infantry unaffected by that particular movement penalty
So the displayed platoon speed is not merely a static motive-type value.
27. Dynamic infantry damage
The manager is beginning to act as the conversion layer between individual AToW soldiers and the single conventional-infantry unit used in BattleTech.
The calculation considers:
- active personnel
- primary weapons
- support weapons
- operators
- support-weapon damage
- current casualty count
- motive type
- support-weapon effects
The platoon therefore loses combat effectiveness automatically as soldiers are killed or removed from active duty.
This is one of the core goals of the platoon system:
Individual AToW soldiers
↓
Squads / equipment / weapons
↓
Calculated conventional infantry platoon
↓
BattleTech tactical-map unit
The final direct deployment/conversion into a tactical infantry token is still a future phase.
Database / backend changes
Vanilla CozyVTT’s database has also been extended to support these features.
Major additions include:
BATTLETECH_ATOWgame system- map
gridType - grid calibration fields
- Platoon
- PlatoonGroup
- PlatoonMember
- Phase-2 platoon configuration/support-weapon fields
All production schema changes have been handled through Prisma migrations and prisma migrate deploy.


















