User Tools

Site Tools


cw4:custom_units

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
cw4:custom_units [2022/09/05 06:05] – Fix typo Up-Levelcw4:custom_units [2023/03/18 13:02] (current) – restructures, new model links added Karsten75
Line 4: Line 4:
 [[cw4:cpack:start | Documented custom CPACKs]] [[cw4:cpack:start | Documented custom CPACKs]]
  
-===== Overview ===== +====== Overview ====== 
- The basic steps in creating a custom unit needs two things + The basic steps in creating a custom unit needs the following:  
-  - A Model (the thing you see on the map) +  - A [[cw4:custom_units#models|Model]] (the thing you see on the map). ((The rest of this page is dedicated to this aspect of unit building, the links in the following bullet points lead to pages for scripts and documentation respectively.))  
-  - A Script (You don't see this, but it makes the model do certain things)+  - A [[4rpl:start|Script]] (You don't see this, but it makes the model do certain things) 
 +  - [[cw4:wiki_help|Documentation]]. <color #00ff00ff>Players enjoy playing more if they understand the capabilities of custom units on the map, regardless of whether they are friendly or enemy units. It is easier for other map makers to implement your units if there is some documentation or guidance on capabilities, limitations and customization options.</color>
  
-These two things are packaged in a CPACK. Each CPACK can have one or more units and scripts. Note that each model can also have multiple sub-units. A model also needs a "mesh", a texture or some color.+The first two things are packaged in a CPACK. Each CPACK can have one or more units and scripts. Note that each model can also have multiple sub-units. A model also needs a "mesh", a texture or some color.
  
-===== Documenting Custom Units =====+Documentation is provided via the wiki.  
 + 
 +====== Documenting Custom Units ======
 :!: <color #00ff00ff>Players enjoy playing more if they understand the capabilities of custom units on the map, regardless of whether they are friendly or enemy units. It is easier for other map makers to implement your units if there is some documentation or guidance on capabilities, limitations and customization options. </color> :!: <color #00ff00ff>Players enjoy playing more if they understand the capabilities of custom units on the map, regardless of whether they are friendly or enemy units. It is easier for other map makers to implement your units if there is some documentation or guidance on capabilities, limitations and customization options. </color>
  
-An [[wiki help|extensive Help system]] has been built into the game so that custom units (CMOD) and their container (CPACK) can be documented in the wiki that is accessible from inside the game. This allows for an explanation of how to use the unit both for the map maker and for the players. +An extensive [[wiki help|Help]] system has been built into the game so that custom units (CMOD) and their container (CPACK) can be documented in the wiki that is accessible from inside the game. This allows for an explanation of how to use the unit both for the map maker and for the players.  
 + 
 +====== Models ====== 
 + 
 +===== Modeling tools =====  
 +Anyone could use [[https://www.blender.org/| Blender]] or any 3D modeler, but many of these have a really steep learning curve. 
 + 
 +Following is a list of some free and perhaps easier tools to use. 
 + 
 +==== Microsoft 3D Builder ==== 
 +3D Builder is about as simple as it gets, can load some geometry and simplify it. 
 + 
 +https://apps.microsoft.com/store/detail/3d-builder/9WZDNCRFJ3T6 
 + 
 +==== Tinkercad ==== 
 +Tinkercad is a good way to make units.  Runs in a browser, is free, and takes moment to figure out. 
 + 
 +https://www.tinkercad.com/
  
 +==== MagicaVoxel ====
  
  
-===== Getting Started ===== 
  
- [[http://www.voxelmade.com/magicavoxel/| MagicaVoxel]] is easy to start with.+ [[http://www.voxelmade.com/magicavoxel/| MagicaVoxel]] is easy to start with.
  
   * It's free, and doesn't take a lot of training to get going.  You can watch a 5 minute video and get the gist of it. Avoid using version 0.99.3, as it has an export bug that will rotate the object and mess with the origin.   * It's free, and doesn't take a lot of training to get going.  You can watch a 5 minute video and get the gist of it. Avoid using version 0.99.3, as it has an export bug that will rotate the object and mess with the origin.
  
-  * When you export, export as an "obj" CW4 will want that obj as well as the png file that goes with it.  The obj is just a text file that specified the geometry of the model and the .png is the texture to place over that geometry.+  * When you export, export as an "obj" CW4 will want that obj as well as the png file that goes with it.  The .obj file is a text file that specifies the geometry of the model and the .png is the texture to place over that geometry.
  
   * .vox files created by MagicaVoxel can be directly imported an in many instances result in a much smaller model with fewer vertexes - this is good for performance. <wrap info> The .vox file that can be imported is the **exported** version, not the save. It is confusing that Magica Voxel does not differentiate between the two .vox file types</wrap>   * .vox files created by MagicaVoxel can be directly imported an in many instances result in a much smaller model with fewer vertexes - this is good for performance. <wrap info> The .vox file that can be imported is the **exported** version, not the save. It is confusing that Magica Voxel does not differentiate between the two .vox file types</wrap>
  
- Another good voxel tool is [[http://www.minddesk.com/| Qubicle]].+==== Qubicle ==== 
 +Another good voxel tool is [[http://www.minddesk.com/| Qubicle]].
  
-  * The full version isn't free.  It was used for the prototype units in CW4.+The full version isn't free.  It was used for the prototype units in CW4.
  
- * Anyone could also use [[https://www.blender.org/| Blender]] or any 3D modeler, but if you don't know how,  they can be a really steep learning curve.+==== AssetForge ====
  
- (paidtool that is fully supported in the game (some units have been made with this tool) is [[http://assetforge.io/|AssetForge]], a 3D modeling studio with pre-built "blocks" that can be assembled and exported.+A paid tool that is fully supported in the game (some units have been made with this tool) is [[http://assetforge.io/|AssetForge]], a 3D modeling studio with pre-built "blocks" that can be assembled and exported.
  
-==== Importing Units/Converting Units Formats ====+===== Importing Units/Converting Units Formats =====
  
 Models exported from many external tools (Magica Voxel, Blender, etc.) can usually be imported into the game editor. **The guiding principle here is that units should be simple**((After import, the game will report on the number of vertices that the model contains.)) - Animation and many of the more advanced features are not suported. Since the game utilizes a 3rd-party package ([[https://ricardoreis.net/trilib-accepted-file-formats/|TriLib]])((see the site for a complete list of supported formats)), for format import/conversions, if one format doesn't work, then attempt either a different format or simplify the model.  Models exported from many external tools (Magica Voxel, Blender, etc.) can usually be imported into the game editor. **The guiding principle here is that units should be simple**((After import, the game will report on the number of vertices that the model contains.)) - Animation and many of the more advanced features are not suported. Since the game utilizes a 3rd-party package ([[https://ricardoreis.net/trilib-accepted-file-formats/|TriLib]])((see the site for a complete list of supported formats)), for format import/conversions, if one format doesn't work, then attempt either a different format or simplify the model. 
Line 44: Line 65:
 [[http://www.assimp.org/| The Open-Asset-Importer-Lib]] [[http://www.assimp.org/| The Open-Asset-Importer-Lib]]
  
-==== What ====+===== What =====
  
 The game needs both the .obj for the actual model and the texture file (usually a .png file, so make sure you have both available for import into the C-Pack editor. The game needs both the .obj for the actual model and the texture file (usually a .png file, so make sure you have both available for import into the C-Pack editor.
Line 50: Line 71:
 The CPACK editor can also directly import the .vox files created by MagicaVoxel and this usually results in a more efficient model. If you import the .vox file, the model and texture will both be imported into the CPACK editor. The CPACK editor can also directly import the .vox files created by MagicaVoxel and this usually results in a more efficient model. If you import the .vox file, the model and texture will both be imported into the CPACK editor.
  
-==== Considerations ====+===== Considerations =====
 From a Discord conversation where @knucracker provided some insight into the import process (for a model exported from Blender) From a Discord conversation where @knucracker provided some insight into the import process (for a model exported from Blender)
  
Line 61: Line 82:
 //The game uses a 3rd party model import package that attempts to create an object hierarchy from what is in the model file.  The game then tries to extract meshes from that object hierarchy.  There are a million different combinations for how modeling software will organize the meshes.  It depends on the modeling software, the export options, and the format being exported to.  I don't understand it all either   Most of the time I try to stick to single meshes that are relatively simple in nature.  I then export and uncheck any fancy stuff in the export (animations, lights, etc. don't need to be exported).// //The game uses a 3rd party model import package that attempts to create an object hierarchy from what is in the model file.  The game then tries to extract meshes from that object hierarchy.  There are a million different combinations for how modeling software will organize the meshes.  It depends on the modeling software, the export options, and the format being exported to.  I don't understand it all either   Most of the time I try to stick to single meshes that are relatively simple in nature.  I then export and uncheck any fancy stuff in the export (animations, lights, etc. don't need to be exported).//
  
-==== Links to Image Repositories ====+===== Links to Image Repositories =====
  
 Please don't use images that you do not have the rights to use, that are the property of others, have licensing fees or require attributions. Links to repositories that are not family-safe are not welcome. The sole right of decision-making rests with Knuckle Cracker. Please don't use images that you do not have the rights to use, that are the property of others, have licensing fees or require attributions. Links to repositories that are not family-safe are not welcome. The sole right of decision-making rests with Knuckle Cracker.
Line 79: Line 100:
  
  
-==== Ownership rights ====+===== Ownership rights =====
  
 Anything you upload to knucklecracker.com website or the affiliated game servers transfers a royalty-free license to knuckle Cracker LLC. for future use in any form. You retain the copyright information, but for uses on Knuckle Cracker and on other platforms associated with Knuckle Cracker games, the license enables us to use the model and to transfer that license to other users for similar purposes. This may include monetization on 3rd party platforms. Anything you upload to knucklecracker.com website or the affiliated game servers transfers a royalty-free license to knuckle Cracker LLC. for future use in any form. You retain the copyright information, but for uses on Knuckle Cracker and on other platforms associated with Knuckle Cracker games, the license enables us to use the model and to transfer that license to other users for similar purposes. This may include monetization on 3rd party platforms.
Line 95: Line 116:
  
  
-===== Random notes =====+====== Random notes ======
  
 ---- ----
cw4/custom_units.txt · Last modified: 2023/03/18 13:02 by Karsten75