|
addict
|
OP
addict
Joined: Sep 2015
|
Hallo everybody! I've worked on a new Mod over the last weeks and think it's time to release a test version, so you can have a look on it! For more information see this thread on the Forum http://larian.com/forums/ubbthreads.php?ubb=showflat&Number=584472&#Post584472 or visit my Nexus site where you can download the mod: BetterLogistics. I will use this thread here to give some more information about the working process and the two Osiris scripts themselves by time.
Last edited by Abraxas*; 24/08/16 04:11 PM. Reason: Thread function changed
|
|
|
|
old hand
|
old hand
Joined: Jun 2013
|
I'll just reply in here instead of PM.
I've played a bit through and haven't run into anything that didn't work. Keep in mind I'm using the version prior to the one you have on Nexus now.
1. I'd suggest adding an in-game readme in a file like the "orders" you get in your inventory.
2. You should make the logistics and crafting books go into your inventory automatically, you can do it without modifying main by sticking something like this in one of your story files: IF CharacterEnteredRegion(CHARACTER_Player1,"Cyseal") AND NOT DB_LogisticsStart(1) THEN DB_LogisticsStart(1); ItemToCharacter(ITEM_BOOK_CraftingBook_000,CHARACTER_Player1); ItemToCharacter(ITEM_BOOK_CraftingBook_001,CHARACTER_Player2); ItemToCharacter(ITEM_BOOK_LogisticBook_000,CHARACTER_Player1);
Also you can add that readme file to here^.
3. One of the problems I'm having with the logistics book is forgetting which player is 1 and which player is 2. Maybe you could set a statement when you start the transfer dialog which has each character say which number they are via CharacterDisplayText. Or perhaps put a node on the player selection screen which you can press called "Player Identify" which does the same.
4. For this one "- crafting with external objects - water, oil and ooze barrel, well, oven, anvil - is possible for companions: they will remember your dialog orders, walk to the required object, re-check resources (no exploits) and create the items" What's the reason the player can't do it? You can usually make the player do anything a companion can if you use CharacterFreeze. Is it because the GUI pops up by default when a PC "uses" an external object?
5. The editor throws 4 "unable to parse script" errors when loading the mod. Does it do this for you?
|
|
|
|
enthusiast
|
enthusiast
Joined: Jun 2015
|
I'll just reply in here instead of PM.
I've played a bit through and haven't run into anything that didn't work. Keep in mind I'm using the version prior to the one you have on Nexus now.
1. I'd suggest adding an in-game readme in a file like the "orders" you get in your inventory.
2. You should make the logistics and crafting books go into your inventory automatically, you can do it without modifying main by sticking something like this in one of your story files: IF CharacterEnteredRegion(CHARACTER_Player1,"Cyseal") AND NOT DB_LogisticsStart(1) THEN DB_LogisticsStart(1); ItemToCharacter(ITEM_BOOK_CraftingBook_000,CHARACTER_Player1); ItemToCharacter(ITEM_BOOK_CraftingBook_001,CHARACTER_Player2); ItemToCharacter(ITEM_BOOK_LogisticBook_000,CHARACTER_Player1);
Also you can add that readme file to here^.
Personally, I try to avoid adding additional event handlers where possible. One could use
PROC
ProcUnlockInitialRecipes()
THEN
..
instead, which is called once after character creation in DOSStart/CYS_General.txt (where money and books are added). Since it's called only once, no DB_LogisticsStart(1) would be required. Writing another PROC does not require any change to CYS_General.txt.
Last edited by FrauBlake; 28/08/16 01:01 AM.
|
|
|
|
addict
|
OP
addict
Joined: Sep 2015
|
I've played a bit through and haven't run into anything that didn't work. Keep in mind I'm using the version prior to the one you have on Nexus now.
Sounds good! Your version contains one or two minor issues I fixed in the Nexus version. Vendors removed trade items of the same template as items in the transport container for example. 1. I'd suggest adding an in-game readme in a file like the "orders" you get in your inventory. That's a good idea. Some functions are not self-explaining and it would be good to have a quick way to read up about them. You should make the logistics and crafting books go into your inventory automatically instead, which is called once after character creation in DOSStart/CYS_General.txt (where money and books are added). Since it's called only once, no DB_LogisticsStart(1) would be required. I liked the idea of gathering up all the stuff from the beach, so the new items are more than just icons in the inventory and get more attention at the start. Is it the necessarity to pick them up or the risk to miss an item? I'd add them via CYS_General as I did with the backpacks. 3. One of the problems I'm having with the logistics book is forgetting which player is 1 and which player is 2. Maybe you could set a statement when you start the transfer dialog which has each character say which number they are via CharacterDisplayText. Or perhaps put a node on the player selection screen which you can press called "Player Identify" which does the same. Yes. Maybe I can implement a Me in the dialog (since only main characters can start the dialog there's always one player and Me). 4. For this one "- crafting with external objects - water, oil and ooze barrel, well, oven, anvil - is possible for companions: they will remember your dialog orders, walk to the required object, re-check resources (no exploits) and create the items" What's the reason the player can't do it? You can usually make the player do anything a companion can if you use CharacterFreeze. Is it because the GUI pops up by default when a PC "uses" an external object? I wanted to conserve the feeling of controlling the two main characters and it would require Osiris to execute some actions and more nasty char-Osiris communication. Currently I use scriptframes in character script that characters execute after the dialog ended. They have to check non-global items in range (doesn't seem to be possible in Osiris) and do some actions under certain conditions (e. g. looking for and sitting on a chair while waiting for the oven to finish). Would be quite complicated. This is what the char script does:
INIT
EXTERN INT:%Oven = 0
EXTERN INT:%SmithOven = 0
EXTERN INT:%WaterBarrel = 0
EXTERN INT:%OozeBarrel = 0
EXTERN INT:%OilBarrel = 0
EXTERN INT:%Well = 0
EXTERN INT:%Anvil = 0
STORY
SCRIPTFRAME CraftingActions
VARS
ITEMTEMPLATE:_OvenTemp = "FUR_Poor_Oven_A_f44b2969-8d36-4e62-95cd-2849a11ae95a"
ITEMTEMPLATE:_DungeonSmithTemp = "2m_DungeonPrison_A_Smith_Fireplace_A_Item_b7f00fad-8fd6-47c5-bbc7-2b71e15e795a"
ITEMTEMPLATE:_SmithTemp = "LTS_Smith_Fireplace_A_1f66bf28-48ac-4be8-8714-93f22212a1c6"
ITEMTEMPLATE:_WellTemp = "Hum_Well_A_e9cfca4c-5564-47e0-85c2-c5387bbdca35"
ITEMTEMPLATE:_WellSnowTemp = "Hum_Well_A_Snow_9a9153f2-d0dd-45f1-a6fb-e9fed68aba4a"
ITEMTEMPLATE:_AnvilTemp = "TOOL_Smith_Anvil_A_4fcd8129-ad8c-46ff-9373-329387e5b214"
ITEMTEMPLATE:_AnvilBTemp = "TOOL_Smith_Anvil_B_4869c1fe-1529-40a1-95c2-569bbdac47f4"
ITEMTEMPLATE:_OilBarrelTemp = "CONT_Barrel_Oil_A_1b34b32c-e96c-404e-90cc-054cb549c558"
ITEMTEMPLATE:_WaterBarrelTemp = "CONT_Barrel_A_Water_59b25792-1cc2-4364-92eb-89aca8fb8425"
ITEMTEMPLATE:_OozeBarrelTemp = "CONT_Barrel_Ooze_A_0ae0668f-418c-46c4-bcbb-1683aa3c68e3"
ITEMTEMPLATE:_Seat1 = "FUR_Citz_Chair_A_3d1892b1-0b6b-4f25-9a70-6c107fdd3294"
ITEMTEMPLATE:_Seat2 = "FUR_Poor_Chair_A_f5115ada-4145-42b7-94bf-80fee29674a8"
ITEMTEMPLATE:_Seat3 = "FUR_Poor_Chair_B_0c784122-2da8-42ef-865f-a70c802b1a75"
ITEMTEMPLATE:_Seat4 = "FUR_Poor_Chair_C_32b6925a-bf33-44c2-96d3-22b432785f80"
ITEMTEMPLATE:_Seat5 = "FUR_Rich_Chair_A_f0a87e0e-f895-4463-8d38-7ebe5853d5c9"
ITEMTEMPLATE:_Seat6 = "FUR_Poor_Bar_Stool_A_f5bcacd2-2d39-442b-b566-23b667ee961b"
ITEMTEMPLATE:_Seat7 = "FUR_Poor_Bar_Stool_B_dcd2f731-17ea-46bb-896a-198a72754d9b"
ITEM:_CraftingItem
ITEM:_Seat
INT:_WalkOrRun
INT:_Ability
INT:_Effect
INT:_IntValue
FLOAT:_Chance = 0.3
FLOAT:_Attribute
FLOAT3:_position
CHARACTER:_Player
ACTIONS
IF "c1&c2"
GetVar(_IntValue,__Me,"Well")
IsEqual(_IntValue,1)
THEN
IF "c1|c2"
ItemGet(_CraftingItem,__Me,15,Random,null,_WellTemp)
ItemGet(_CraftingItem,__Me,15,Random,null,_WellSnowTemp)
THEN
CharacterMoveTo(_CraftingItem,0,0,0,1,1.1)
Sleep(1)
IF "c1"
IsRandom(0.15)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_craft")
IF "c1"
IsRandom(0.2)
THEN
CreateSurfaceAt(__Me,Water,1,4)
ENDIF
CharacterEvent(__Me,"Well")
SetVar(__Me,"Well",INT:0)
Sleep(1.5)
ELSE
DisplayText(__Me,"WellNotFound",3)
SetVar(__Me,"Well",INT:0)
Sleep(3)
ENDIF
ENDIF
IF "c1&c2"
GetVar(_IntValue,__Me,"Oven")
IsEqual(_IntValue,1)
THEN
IF "c1"
ItemGet(_CraftingItem,__Me,15,Random,null,_OvenTemp)
THEN
CharacterMoveTo(_CraftingItem,0,0,0,0.7,0.8)
Sleep(1)
IF "c1"
IsRandom(0.15)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_craft")
Sleep(2)
PlayLoopEffectAt(_Effect,_CraftingItem,"FX_Env_Smoke_Small_A")
IF "c1&(c2|c3|c4|c5|c6|c7|c8)"
IsRandom(0.1)
ItemGet(_Seat,__Me,12,Random,null,_Seat1)
ItemGet(_Seat,__Me,12,Random,null,_Seat2)
ItemGet(_Seat,__Me,12,Random,null,_Seat3)
ItemGet(_Seat,__Me,12,Random,null,_Seat4)
ItemGet(_Seat,__Me,12,Random,null,_Seat5)
ItemGet(_Seat,__Me,12,Random,null,_Seat6)
ItemGet(_Seat,__Me,12,Random,null,_Seat7)
THEN
CharacterMoveTo(_Seat)
Sleep(1)
CharacterUseItem(_Seat)
Sleep(8)
GetRandom(_WalkOrRun,0,1)
CharacterMoveTo(_CraftingItem,_WalkOrRun)
Sleep(1)
ELSE
Sleep(5)
ENDIF
IF "c1"
IsRandom(0.3)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_craft")
StopLoopEffect(_Effect)
Sleep(1)
CharacterPlayAnimation("use_loot")
CharacterEvent(__Me,"Oven")
SetVar(__Me,"Oven",INT:0)
Sleep(1.5)
ELSE
DisplayText(__Me,"OvenNotFound",3)
SetVar(__Me,"Oven",INT:0)
Sleep(3)
ENDIF
ENDIF
IF "c1&c2"
GetVar(_IntValue,__Me,"SmithOven")
IsEqual(_IntValue,1)
THEN
IF "c1|c2"
ItemGet(_CraftingItem,__Me,15,Random,null,_DungeonSmithTemp)
ItemGet(_CraftingItem,__Me,15,Random,null,_SmithTemp)
THEN
CharacterMoveTo(_CraftingItem)
Sleep(1)
IF "c1"
IsRandom(0.15)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_craft")
GetPosition(_CraftingItem,_position)
Add(_position,{0;1;0})
PlayLoopEffectAt(_Effect,_position,"FX_GP_Bomber_Sparks")
/*IF "c1&c2"
CharacterGetStat(_Attribute,__Me,Dexterity)
IsGreaterThen(_Attribute,8)
THEN
Subtract(_chance,0.15)
ENDIF
IF "c1&c2"
CharacterGetAbility(_Ability,__Me,Repair)
IsGreaterThen(_Ability,1)
THEN
Subtract(_chance,0.1)
ENDIF
IF "c1"
IsRandom(_Chance)
THEN
CreateSurfaceAt(__Me,Fire,1,4)
ENDIF
Set(_Chance,0.3)*/
Sleep(5)
CharacterPlayAnimation("use_craft")
StopLoopEffect(_Effect)
Sleep(2)
CharacterPlayAnimation("use_loot")
CharacterEvent(__Me,"SmithOven")
SetVar(__Me,"SmithOven",INT:0)
Sleep(1)
ELSE
DisplayText(__Me,"SmithNotFound",3)
SetVar(__Me,"SmithOven",INT:0)
Sleep(3)
ENDIF
ENDIF
IF "c1&c2"
GetVar(_IntValue,__Me,"Anvil")
IsEqual(_IntValue,1)
THEN
IF "c1|c2"
ItemGet(_CraftingItem,__Me,15,Random,null,_AnvilTemp)
ItemGet(_CraftingItem,__Me,15,Random,null,_AnvilBTemp)
THEN
CharacterMoveTo(_CraftingItem)
Sleep(1)
IF "c1"
IsRandom(0.1)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_activate")
Sleep(0.5)
CharacterPlayAnimation("use_mine")
Sleep(1.5)
CharacterPlayAnimation("use_mine")
Sleep(1)
IF "c1"
IsRandom(0.3)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
CharacterPlayAnimation("use_mine")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_loot")
CharacterEvent(__Me,"Anvil")
SetVar(__Me,"Anvil",INT:0)
Sleep(1.5)
ELSE
DisplayText(__Me,"AnvilNotFound",3)
SetVar(__Me,"Anvil",INT:0)
Sleep(3)
ENDIF
ENDIF
IF "c1&c2"
GetVar(_IntValue,__Me,"WaterBarrel")
IsEqual(_IntValue,1)
THEN
IF "c1"
ItemGet(_CraftingItem,__Me,15,Random,null,_WaterBarrelTemp)
THEN
CharacterMoveTo(_CraftingItem,0,0,0,1,1.1)
Sleep(1)
IF "c1"
IsRandom(0.15)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_craft")
IF "c1"
IsRandom(0.2)
THEN
CreateSurfaceAt(__Me,Water,1,4)
ENDIF
CharacterEvent(__Me,"WaterBarrel")
SetVar(__Me,"WaterBarrel",INT:0)
Sleep(1.5)
ELSE
DisplayText(__Me,"WaterNotFound",3)
SetVar(__Me,"Well",INT:0)
Sleep(3)
ENDIF
ENDIF
IF "c1&c2"
GetVar(_IntValue,__Me,"OilBarrel")
IsEqual(_IntValue,1)
THEN
IF "c1"
ItemGet(_CraftingItem,__Me,15,Random,null,_OilBarrelTemp)
THEN
CharacterMoveTo(_CraftingItem,0,0,0,1,1.1)
Sleep(1)
IF "c1"
IsRandom(0.15)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_craft")
IF "c1"
IsRandom(0.2)
THEN
CreateSurfaceAt(__Me,Oil,1,4)
ENDIF
CharacterEvent(__Me,"OilBarrel")
SetVar(__Me,"OilBarrel",INT:0)
Sleep(1.5)
ELSE
Sleep(1)
DisplayText(__Me,"OilNotFound",3)
Sleep(2)
CharacterPlayAnimation("use_dig")
SetVar(__Me,"OilBarrel",INT:0)
Sleep(3)
ENDIF
ENDIF
IF "c1&c2"
GetVar(_IntValue,__Me,"OozeBarrel")
IsEqual(_IntValue,1)
THEN
IF "c1"
ItemGet(_CraftingItem,__Me,15,Random,null,_OozeBarrelTemp)
THEN
CharacterMoveTo(_CraftingItem,0,0,0,1,1.1)
Sleep(1)
IF "c1"
IsRandom(0.15)
THEN
CharacterPlayAnimation("use_inspect")
Sleep(1)
ENDIF
CharacterPlayAnimation("use_craft")
/*IF "c1"
IsRandom(0.2)
THEN
CreateSurfaceAt(__Me,Ooze,1,4)
ENDIF */
CharacterEvent(__Me,"OozeBarrel")
SetVar(__Me,"OozeBarrel",INT:0)
Sleep(1.5)
ELSE
DisplayText(__Me,"OozeNotFound",3)
SetVar(__Me,"OozeBarrel",INT:0)
Sleep(3)
ENDIF
ENDIF
Sleep(1)
CharacterEvent(__Me,"CraftingOrdersFinished")
DisplayText(__Me,"OrdersCompleted",3)
Sleep(2) 5. The editor throws 4 "unable to parse script" errors when loading the mod. Does it do this for you? That are 'errors' of the type: [99] Error 9: Variable _WellTemp is not of type FIXEDSTRING but of type ITEMTEMPLATE It's not a problem and wouldn't work if I used FIXEDSTRING instead of ITEMTEMPLATE in the VARS section (if I remember my testings right). Anyway: it works. http://larian.com/forums/ubbthreads.php?ubb=showflat&Number=581127&page=1 (number 18) I'd like to ask some question back: 1. Is a scrolls and food transfer necessary? Or for any other item type that isn't regarded yet? 2. Should companions be able to start the item transfer dialog? 3. Should item to container transfer be possible for SourceHunter backpacks and every container in the game world? 4. Would a special weapon chest or something like that be desired for weapon transfer exceptions? (Weapons are the only items that can be stored in any container to except them from item transfer, for CharacterMoveWeaponsToContainer not regarding containers in character inventory) 5. Is the whole system (especially the dialogs) handy enough? 6. Do you miss any function?
|
|
|
|
old hand
|
old hand
Joined: Jun 2013
|
Is it the necessarity to pick them up or the risk to miss an item?
You could just note on the ReadMe where the books are so people can go back if they missed them. I'd like to ask some question back:
1. Is a scrolls and food transfer necessary? Or for any other item type that isn't regarded yet? 2. Should companions be able to start the item transfer dialog? 3. Should item to container transfer be possible for SourceHunter backpacks and every container in the game world? 4. Would a special weapon chest or something like that be desired for weapon transfer exceptions? (Weapons are the only items that can be stored in any container to except them from item transfer, for CharacterMoveWeaponsToContainer not regarding containers in character inventory) 5. Is the whole system (especially the dialogs) handy enough? 6. Do you miss any function?
1. Probably not, the main thing I would use the transfer book for is to move all the items to my character with barter for selling. Pretty rare I sell food or scrolls. 2. If it doesn't cause a problem, I don't see why not. But if it does (or more work than is worth it) then don't worry about it. 3. I never use containers really so I'm a bad person to ask. Just creates extra clicking. 4. Same as above. 5. The transfer function is very useful. Both for selling and for say moving all your armors to a character so you can pick which one to use. I'm not much of a crafter normally so that function is less useful to me. I like that I can make potions in large batches though. 6. I don't think so but as before, I'm not much of a crafter normally.
|
|
|
|
addict
|
OP
addict
Joined: Sep 2015
|
1. Probably not, the main thing I would use the transfer book for is to move all the items to my character with barter for selling. Pretty rare I sell food or scrolls. And what about all the recipe books to get rid of? 2. If it doesn't cause a problem, I don't see why not. But if it does (or more work than is worth it) then don't worry about it. I better restrict starting transfer dialogs via backpack to a small amount of characters as long as I don't see a way to tell Osiris which non-global backpack a character started a dialog with. Only the char script knows, but it can't tell, Osiris doesn't listen! 3. I never use containers really so I'm a bad person to ask. Just creates extra clicking. For the same reasons as 2. I better make restrictions here if it's not highly desired. I've added a book with information about all contained items and functions now, added a Me to transfer dialogs and fixed a potential problem with crafting in Coop. I'll upload the update tomorrow.
|
|
|
|
enthusiast
|
enthusiast
Joined: Jun 2015
|
1. Probably not, the main thing I would use the transfer book for is to move all the items to my character with barter for selling. Pretty rare I sell food or scrolls. And what about all the recipe books to get rid of? 2. If it doesn't cause a problem, I don't see why not. But if it does (or more work than is worth it) then don't worry about it. I better restrict starting transfer dialogs via backpack to a small amount of characters as long as I don't see a way to tell Osiris which non-global backpack a character started a dialog with. Only the char script knows, but it can't tell, Osiris doesn't listen! Osiris can pick up a CharacterItemHandleEvent() for non globals, so even non globals can communicate. That's what mines do after all, they communicate back and forth with Osiris. (GLO_Minespot.itemScript and LUC_MineBlackRock.txt) You only need to find the 'event actors' for the event, which you can ignore in Osiris as desired. I'm not sure if a dialog start throws a use event though, but dialogs can set their own events and they have their actors ... 3. I never use containers really so I'm a bad person to ask. Just creates extra clicking. For the same reasons as 2. I better make restrictions here if it's not highly desired. I've added a book with information about all contained items and functions now, added a Me to transfer dialogs and fixed a potential problem with crafting in Coop. I'll upload the update tomorrow.
Last edited by FrauBlake; 29/08/16 05:25 PM.
|
|
|
|
addict
|
OP
addict
Joined: Sep 2015
|
Osiris can pick up a CharacterItemHandleEvent() for non globals, so even non globals can communicate. Oh, I must have missed it somehow! I searched for this several times... Thank you
|
|
|
|
old hand
|
old hand
Joined: Jun 2013
|
3. I never use containers really so I'm a bad person to ask. Just creates extra clicking. For the same reasons as 2. I better make restrictions here if it's not highly desired. I'd hesitate to make too many function changes based on my recommendations since I'm not a normal player. Something to think about anyway. IMO your mod is good enough to release on the workshop now BTW. Earlier the better since the D:OS 2 early access is coming up and the player base is going to take a hit. Make sure to create a decent steam workshop thumbnail. One tip for the icon is, make it a good sized 16:9 resolution image. Then once you have the final version, resize it to 637x358 and use that one. For some reason that's the size the workshop likes. You can't change the thumbnail after you upload without deleting the entire mod.
|
|
|
|
addict
|
OP
addict
Joined: Sep 2015
|
IMO your mod is good enough to release on the workshop now BTW. Earlier the better since the D:OS 2 early access is coming up and the player base is going to take a hit. Yeah, now that two issues are solved I'm quite content with it. I just want it to feel functionally consistent and complete, and free from bugs. I'll test the updated script and maybe release the first version at the weekend, but I'm not worried about Early Access (not more than I'd be in two weeks since it's so close already and this mod, for the known reasons, so late). Thanks for the workshop tip. Though I'll continue my Steam workshop embargo, as long as I have the impression Steam's a potential target for a witcher.
|
|
|
|
enthusiast
|
enthusiast
Joined: Jun 2015
|
IMO your mod is good enough to release on the workshop now BTW. Earlier the better since the D:OS 2 early access is coming up and the player base is going to take a hit. Yeah, now that two issues are solved I'm quite content with it. I just want it to feel functionally consistent and complete, and free from bugs. I'll test the updated script and maybe release the first version at the weekend, but I'm not worried about Early Access (not more than I'd be in two weeks since it's so close already and this mod, for the known reasons, so late). Thanks for the workshop tip. Though I'll continue my Steam workshop embargo, as long as I have the impression Steam's a potential target for a witcher. Ugh, what does that mean ? I'm far more scared by pages with tons of external ads with unknown Javascript like Nexus than I'm scared by Steam. Should I be more scared of Steam ?
|
|
|
|
addict
|
OP
addict
Joined: Sep 2015
|
I'm far more scared by pages with tons of external ads with unknown Javascript like Nexus than I'm scared by Steam. Should I be more scared of Steam ? I was more referring to Steam's/Valve's behaviour and meaning on the market in general: trying to monetize mods, demanding 30% (!) of sales from developers/publishers, handling of property (no resale of licences), handling of revocation (< 2 hours of playing: that's a farce), producing all the statistical data about player behaviour that companies base their production on, systematical desinterest in moderating their forums etc. I don't like to feed the monsters... So overall I prefer Nexus over Steam.
|
|
|
|
addict
|
OP
addict
Joined: Sep 2015
|
Updated test version now available (0.6.0.0):
- Fixed potential crafting issue in coop - Improved backpack item transfer - Added Me to dialog - Allowed companions to start the backpack item transfer - Support of different container templates for item transfer possible via char script update - Added an info book
|
|
|
|
addict
|
OP
addict
Joined: Sep 2015
|
UPDATE: Version 1.02 is available. I had a strange crash every time I consumed items when using these char script lines: EVENT ModOptionDialog
VARS
ITEM:_ModBook = BOOK_ModBook_000_f852c2fd-857e-4441-834b-045559689def
ON
OnUseItem(__Me,_ModBook)
ACTIONS
DialogStart("BLModOptions",_ModBook,__Me) The Dialog got started corretly, but every item I consumed caused a crash. The ID of the mod book is correct. It's a global item and has Send use event to Osiris (in inventory) as OnUse action. What is wrong here? This way it works: EVENT ModOptionDialog
VARS
ITEM:_ModBook
ITEMTEMPLATE:_BookTemp = BOOK_ModBook_668583fe-5c9a-4bc6-b610-928033dbf956
ITEMTEMPLATE:_Temp
ON
OnUseItem(__Me,_ModBook)
ACTIONS
IF "c1&c2"
ItemGetTemplate(_ModBook,_Temp)
IsEqual(_Temp,_BookTemp)
THEN
DialogStart("BLModOptions",_ModBook,__Me)
ENDIF Any ideas?
|
|
|
Moderated by Bvs, ForkTong, gbnf, Issh, Kurnster, Larian_QA, LarSeb, Lar_q, Lynn, Monodon, Raze, Stephen_Larian
|
|