Difference between revisions of "Korman:Python Nodes"
m (→D'Lanor's Dynamic Book Templates) |
Tsar hoikas (Talk | contribs) (→Imagers: UVs no longer have to be flipped) |
||
Line 90: | Line 90: | ||
===Imagers=== | ===Imagers=== | ||
− | |||
− | |||
'''Script: xSimpleImager.py''' | '''Script: xSimpleImager.py''' | ||
Line 100: | Line 98: | ||
[[file:KorPython11.jpg|300px]] | [[file:KorPython11.jpg|300px]] | ||
− | |||
− | |||
Line 121: | Line 117: | ||
[[file:KorPython13.jpg|300px]] | [[file:KorPython13.jpg|300px]] | ||
− | |||
− | |||
[[file:KorPython12.jpg|300px]] | [[file:KorPython12.jpg|300px]] |
Revision as of 15:02, 25 June 2016
This is a tutorial page. |
This tutorial will show how to utilize various Python scripts in Korman to work in URU.
Introduction
Python scripts are what make most of the more dynamic actions in URU work, such as puzzles, Linking Books, journals, and more. Cyan has provided many default scripts to choose from for most common functions, but some instances will require a custom script.
In each case, a Python node in Korman will have sockets that will tell the script what it should be doing.
Types of Nodes
Python File Node
This is the node with which you'll want to start. Click Select to choose your Python script. The node will expand and add sockets for each function of the script. Notice the different colors of the sockets when they appear. This will tell you which kinds of the following nodes will connect to that socket.
Boolean Attribute Node
Use this socket to set boolean functions of a script (true or false). Checking the box once it's connected will set the value to "true".
Numeric Attribute Node
This node will set a numeric value for the connected socket.
Object Attribute Node
This node is used to reference an existing object in the blend file.
String Attribute Node
This node creates a string value (regular text) for the socket.
Texture Attribute Node
This node will reference a specific material and its texture for the script.
Other Nodes
You may also need to use region sensor, clickable, and responder nodes for some scripts.
Cyan Global Scripts
First, you will need PY files of Cyan's scripts. You can find them at this link.
Unzip this archive and export it into it's own folder, preferably an easy place you'll remember later.
NOTE: PLEASE DO NOT MODIFY THESE SCRIPTS. Not only may it break some functions with your Age, they are property of Cyan and should be treated as such.
Journals
Script: xJournalBookGUIPopup.py
NOTE: This script is used for online shards.
Key:
- Red node: your journal clickable object
- Yellow node: the clickable region where the clickable is active
- Purple nodes: the numeric nodes that determine a book's width and height
- Green node: The location of the journal in your LOC file (see example below)
You'll need to create a LOC file with PlasmaShop, using what you entered into the green node.
LOC file example:
NOTE: The journal cover, regardless of the type of image it started as (jpg, png, etc), it will export as DDS.
The LOC file should be saved into the dat folder of your URU installation.
Imagers
Script: xSimpleImager.py
Postable
Before you start, make sure the UV mapping looks something like this for proper centering:
Key:
- Cyan node: The name of the imager that shows up in the KI
- Green node: The material and texture of the imager. The texture should be set to Type: Image or Movie and should be left empty.
- Uncheck MIP Map and Interpolation under Image Sampling in the Textures tab.
- Red node: the region an avatar enters to bring the imager up in the KI
- Blue nodes: these numerical nodes will set how long an image is on screen before it switches to the next (in seconds) and how many images the imager can hold
- For online shards, it is recommended to keep the number of images at 10 or below.
- Purple nodes: these boolean values determine if an imager is members only (keep this off or you won't be able to post) and if it can take pellet scores
- Yellow node: the imager object itself
Visitor Log
The UV mapping for a visitor imager should look like this:
Key:
- Cyan node - The name of the imager (you'll need this for later)
- Green node - The material and associated texture of the imager. Remember to leave the texture set to Type: Image or Movie and do not add a texture
- Uncheck MIP Map and Interpolation under Image Sampling in the Textures tab.
- Red node - A placeholder for the region. Since this imager won't receive posts, you can use a dummy object for this.
- Blue nodes - These can be set to the defaults as the screen won't change. Time = 10 and Max = 5.
- Purple node - check the box for ImagerMembersOnly to further secure it from posting
- Yellow node - set this to the imager object itself
Visitor Python Scripts
For the visitor imager to work, you will also need a separate, custom Python script.
You'll need Plasmashop to create PY files. Open Plasmashop, click File->New and choose Python Script.
Copy and paste the text from the text file of the version you would like.
Modify the Files
When you have the files pasted in Plasmashop, there are a few things to change:
- Change AgeName to the filename of your Age.
- Change 99999 to your unique sequence prefix (in your World tab of your Properties window)
- Change any instances of <Imager String Name> to the name you entered in the Cyan (string) node above.
Save the modified file as YourAgeNameHere.py.
You will need UruPython 3.1 for the Path of the Shell version to pack the PY file into a PAK file.
In all versions of the game, all files should be named after your Age file and put into the Python folder of your URU installation.
NOTE: Imagers will not work properly in Destiny if you use the net.linktoage command. To see them, you'll need to use the Nexus after the initial link (under "Personal Ages").
Custom Python Scripts
This will show examples how to set up some of the custom scripts developed by fans for URU.
D'Lanor's Dynamic Book Templates
For offline (non-LOC) journals and Linking Books to fan Ages, you can use D'Lanor's Python script templates.
Once those are properly set up, saved, and packed into a PAK file (for offline versions), open the BookGUI.py file of your Age in Korman's Python node.
Key:
- Red: Clickable object.
- Yellow: Clickable object's region.
- Cyan: Name of Book from ageBooks section of the BookGUI script.
NOTE: This can be done for both journals and Linking Books if the PageDefs and Journals PY files are set correctly. The avatar will NOT be animated for a Linking Book, however.
NOTE 2: Your cover texture will export with a DDS extension instead of JPG, PNG, etc. Be sure to reflect this in your PageDefs file.