I Made More Slots But How To Put Into A Class?
Posted: Tue Apr 21, 2015 9:14 pm
The below is some code section I am looking at from the Xorn mod, but what I am interested in is how to get extra slots into a new class for any race.
The idea is a chronomancy class where the self is doubled, perhaps a chrono-solipsist variant, the self being overlapped with another self, which then causes two of each slot.
So, as you see below, I was able to add some slots and give them x,y coords, and the below code does load with two of each slot that I can equip items into, except it still doesn’t work to double the psionic focus slot.
So, how do I get extra slots like these into a class birth descriptor?
Why do a few of the slots have a text=“(position)”? Somehow some maneuverings would cause some slots to not show or the game not to load, but the below code loads for me with the extra slots.
Does just making these slots cause the game to work with the equipment put in them or is there something else?
Since this code is originally from a xorn, which has its own race image, I don’t know how to set it so from a class birth descriptor it would put these into any race, or what all the numbers in the doll settings mean in relation to this.
And I am not nearly pretending I am going to be able to learn code, but I thought if its just a matter of moving and adjusting some things and anyone wanted to fill in what I don’t know, it might be doable?
talents = {[ActorTalents.T_X_BURROW] = 1,},
copy = {
equipdoll = "xorn",
moddable_tile = "xorn",
moddable_tile_base = "base_xorn_01.png",
healing_factor = .5,
life_rating = 12,
poison_immune=1,
disease_immune=1,
unused_generics = 1,
default_wilderness = {"playerpop", "allied"},
starting_zone = "trollmire",
starting_quest = "start-allied",
starting_intro = "xorn",
fourarms = true,
},
random_escort_possibilities = { {"tier1.1", 1, 2}, {"tier1.2", 1, 2}, {"daikara", 1, 2}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, },
body = {PSIONIC_FOCUS=2,FINGER=4,LITE=2,HEAD=2,NECK=2,TOOL=2,MAINHAND=2,OFFHAND=2,FEET=2,BODY=2,QUIVER=2,BELT=2,HANDS=2,CLOAK=2},
}
ActorInventory.equipdolls.xorn = { w=48, h=48, itemframe="ui/equipdoll/itemframe48.png", itemframe_sel="ui/equipdoll/itemframe-sel48.png", ix=3, iy=3, iw=42, ih=42, doll_x=116, doll_y=168+64, list={
PSIONIC_FOCUS = {{weight=1, x=20, y=48},{weight=16, x=90, y=48}},
MAINHAND = {{weight=2, x=20, y=120},{weight=17, x=90, y=120}},
OFFHAND = {{weight=3, x=20, y=192},{weight=18, x=90, y=192}},
BODY = {{weight=4, x=20, y=336},{weight=19, x=90, y=336}},
QUIVER = {{weight=5, x=20, y=264}, {weight=20, x=90, y=264}},
FINGER = {{weight=6, x=20, y=480}, {weight=7, x=90, y=480}, {weight=21, x=20, y=408}, {weight=22, x=90, y=408}},
LITE = {{weight=8, x=192, y=408}, {weight=23, x=192, y=336}},
TOOL = {{weight=9, x=264, y=408, text="bottom"}, {weight=24, x=336, y=408, text="bottom"}},
FEET = {{weight=10, x=264, y=336}, {weight=25, x=336, y=336}},
BELT = {{weight=11, x=192, y=264}, {weight=26, x=264, y=264}},
HANDS = {{weight=12, x=264, y=192}, {weight=27, x=192, y=192}},
CLOAK = {{weight=13, x=264, y=120}, {weight=28, x=192, y=120}},
NECK = {{weight=14, x=336, y=48, text="topright"}, {weight=29, x=336, y=120}},
HEAD = {{weight=15, x=192, y=48, text="topleft"}, {weight=30, x=264, y=48, text="topleft"}},
}}
getBirthDescriptor("world", "Maj'Eyal").descriptor_choices.race.Xorn = "allow"
getBirthDescriptor("world", "Infinite").descriptor_choices.race.Xorn = "allow"
getBirthDescriptor("world", "Arena").descriptor_choices.race.Xorn = "allow"
----
So, looking at the Chronomancer classes, I can start like, just as an example:
newBirthDescriptor{
type="subclass",
name="Double-Self",
locked = function() return profile.mod.allow_build.chronomancer_double-self end,
locked_desc = "I will always stand with myself.",
desc = {
"...",
},
power_source = {psionic=true, technique=true, arcane=true},
body = {PSIONIC_FOCUS=2,FINGER=4,LITE=2,HEAD=2,NECK=2,TOOL=2,MAINHAND=2,OFFHAND=2,FEET=2,BODY=2,QUIVER=2,BELT=2,HANDS=2,CLOAK=2},
}
But that stuff about the extra slots = ?
The idea is a chronomancy class where the self is doubled, perhaps a chrono-solipsist variant, the self being overlapped with another self, which then causes two of each slot.
So, as you see below, I was able to add some slots and give them x,y coords, and the below code does load with two of each slot that I can equip items into, except it still doesn’t work to double the psionic focus slot.
So, how do I get extra slots like these into a class birth descriptor?
Why do a few of the slots have a text=“(position)”? Somehow some maneuverings would cause some slots to not show or the game not to load, but the below code loads for me with the extra slots.
Does just making these slots cause the game to work with the equipment put in them or is there something else?
Since this code is originally from a xorn, which has its own race image, I don’t know how to set it so from a class birth descriptor it would put these into any race, or what all the numbers in the doll settings mean in relation to this.
And I am not nearly pretending I am going to be able to learn code, but I thought if its just a matter of moving and adjusting some things and anyone wanted to fill in what I don’t know, it might be doable?
talents = {[ActorTalents.T_X_BURROW] = 1,},
copy = {
equipdoll = "xorn",
moddable_tile = "xorn",
moddable_tile_base = "base_xorn_01.png",
healing_factor = .5,
life_rating = 12,
poison_immune=1,
disease_immune=1,
unused_generics = 1,
default_wilderness = {"playerpop", "allied"},
starting_zone = "trollmire",
starting_quest = "start-allied",
starting_intro = "xorn",
fourarms = true,
},
random_escort_possibilities = { {"tier1.1", 1, 2}, {"tier1.2", 1, 2}, {"daikara", 1, 2}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, },
body = {PSIONIC_FOCUS=2,FINGER=4,LITE=2,HEAD=2,NECK=2,TOOL=2,MAINHAND=2,OFFHAND=2,FEET=2,BODY=2,QUIVER=2,BELT=2,HANDS=2,CLOAK=2},
}
ActorInventory.equipdolls.xorn = { w=48, h=48, itemframe="ui/equipdoll/itemframe48.png", itemframe_sel="ui/equipdoll/itemframe-sel48.png", ix=3, iy=3, iw=42, ih=42, doll_x=116, doll_y=168+64, list={
PSIONIC_FOCUS = {{weight=1, x=20, y=48},{weight=16, x=90, y=48}},
MAINHAND = {{weight=2, x=20, y=120},{weight=17, x=90, y=120}},
OFFHAND = {{weight=3, x=20, y=192},{weight=18, x=90, y=192}},
BODY = {{weight=4, x=20, y=336},{weight=19, x=90, y=336}},
QUIVER = {{weight=5, x=20, y=264}, {weight=20, x=90, y=264}},
FINGER = {{weight=6, x=20, y=480}, {weight=7, x=90, y=480}, {weight=21, x=20, y=408}, {weight=22, x=90, y=408}},
LITE = {{weight=8, x=192, y=408}, {weight=23, x=192, y=336}},
TOOL = {{weight=9, x=264, y=408, text="bottom"}, {weight=24, x=336, y=408, text="bottom"}},
FEET = {{weight=10, x=264, y=336}, {weight=25, x=336, y=336}},
BELT = {{weight=11, x=192, y=264}, {weight=26, x=264, y=264}},
HANDS = {{weight=12, x=264, y=192}, {weight=27, x=192, y=192}},
CLOAK = {{weight=13, x=264, y=120}, {weight=28, x=192, y=120}},
NECK = {{weight=14, x=336, y=48, text="topright"}, {weight=29, x=336, y=120}},
HEAD = {{weight=15, x=192, y=48, text="topleft"}, {weight=30, x=264, y=48, text="topleft"}},
}}
getBirthDescriptor("world", "Maj'Eyal").descriptor_choices.race.Xorn = "allow"
getBirthDescriptor("world", "Infinite").descriptor_choices.race.Xorn = "allow"
getBirthDescriptor("world", "Arena").descriptor_choices.race.Xorn = "allow"
----
So, looking at the Chronomancer classes, I can start like, just as an example:
newBirthDescriptor{
type="subclass",
name="Double-Self",
locked = function() return profile.mod.allow_build.chronomancer_double-self end,
locked_desc = "I will always stand with myself.",
desc = {
"...",
},
power_source = {psionic=true, technique=true, arcane=true},
body = {PSIONIC_FOCUS=2,FINGER=4,LITE=2,HEAD=2,NECK=2,TOOL=2,MAINHAND=2,OFFHAND=2,FEET=2,BODY=2,QUIVER=2,BELT=2,HANDS=2,CLOAK=2},
}
But that stuff about the extra slots = ?