Module System for version 0.903 (was 0.894)

正在查看此主题的用户

状态
不接受进一步回复。
Wow.

Good lord.

I'm staggered by the sheer amount of new features in this version.  Really, really staggered.  At least a dozen things which required major workarounds in Schattenlander for 0.80x, or even some which were simply impossible, are now going to be literally trivial.  A quick list of those:
  • Potions as factions for data storage.  Buh-bye thanks to item slots - woot!
  • Killing agents onfield with potions and similar.  Yay!  (I wonder what text will be displayed.  I wonder if set_show_messages works now.  Hmm - should there perhaps be a third argument on agent_deliver_damage_to_agent for the amount of damage?  Or am I misunderstanding the operation?  Armagan?)
  • Knowing where a potion came from.  I'll still need "every agent is a troop" so that agents' stats can change dynamically, but with this I think "backup potions" for NPCs may be history - everybody can carry throwable potions without additional bookkeeping.  Hmm - may still be tricky to ID the wielder until I work out what the delta is to the wielder's position from the item's.
  • Explosions.  Scene_prop_replace the thrown potion with its explosion - awesome.  (Wonder if this triggers ti_on_scene_prop_init?  If so the explosion particle system need not even loop anymore.  Double awesome.)
  • Auto-targeting on hills and many other things.  Fixed with one line of code.  Position_set_z_to_ground_level is awesome.
  • Half-blinding the player due to a Sunburst potion.  Previous: badly kludged with a particle system.  Now: One presentation object.  Maybe six lines of code total.  Probably be more complex because the exact alpha can be scaled linearly, so I can make your vision recover gradually.
  • Knockdown.  Someone should write a series of "knock down and stay prone for X time" animations and put 'em in public scripts; I'm sure I'm not the only one who would be gleeful.
  • Stone-tar.  A pity set_speed_limit works on the AI only; have to work something else out for the player.  I suppose that with position_set_z_to_ground_level (plus say 1cm) one can make a back-sliding carpet... or I might just make a sits-in-front-of-you moving barrier to force an equivalent speed limit.
  • Alchemical components.  Twenty player slots just got freed up because of troop_inventory_slot_set_item_amount and its kin.
  • Giving orders onfield.  Heck, at this point I expect one of us will write a "collate typed text" script and put it in the public scripts thread.
  • Music.  Ahh, sweet music!  If I wanted to exactly replicate the music behaviour of Darklands, I now have all the tools that might be required to do so.  Bring me my maestro...
  • Nondestructive imod detection.  Item enhancements just got an order of magnitude easier and more stable.
  • Currency!  Oh. My. God.  Florins and guilders and pfennig, in item prices even, here we come.
  • Item properties.  Item enhancements may have gotten much more sophisticated at the same time as they just got easier... rather than tinker with item names, we just give 'em subtitles all we want.
  • Conversation screens.  Between script_setup_troop_meeting and party_get_current_terrain... think about that.  Ambitious mods can actually insert animations for sitting, and so forth, and actually depict the rest of the party in the background, if they like.  But even without that, this manages something that I'd discarded as previously impossible.
  • I can't describe how many places val_clamp will clean up my code. As many as stars in the sky.  The option of unlimited script parameters - not quite so many.  Only as many as trees in the forest.  Sweet!
  • Splitting the party!  I'd wanted this - and given up on it as impractical.  But armed with set_player_troop, you could do all kinds of sophisticated ****.  Traitors!  Dude, you can temporarily play a traitor in your own party!  How awesome is that?

... wow...

Kudos, Armagan.  This is a major, major update for us.  An incredibly powerful set of tools.  It's very obvious that moddability has been a high priority in this release - and you've done an excellent job.
 
Yes, finally.  I can start modding this version and I see a lot of stuff I really need that would before take me hours and days and weeks but now its really simple.  Now only if Armagan could tell my professors not to assign any school work for the rest of the semester and enforce it....
 
Found this in the module_factions file: ##  ("kingdom_of_france",  "Kingdom of France", 0, 0.9, default_kingdom_relations, []),
##  ("duchy_of_normandy",  "Duchy of Normandy", 0, 0.9, default_kingdom_relations, []),
##  ("county_of_brittany", "County of Brittany", 0, 0.9, default_kingdom_relations, []),
##  ("county_of_maine",    "County of Maine", 0, 0.9, default_kingdom_relations, []),
##  ("county_of_anjou",    "County of Anjou", 0, 0.9, default_kingdom_relations, []),
##  ("county_of_blois",    "County of Blois", 0, 0.9, default_kingdom_relations, []),
##  ("county_of_vermandois",  "County of Vermandois", 0, 0.9, default_kingdom_relations, []),
##  ("county_of_flanders",  "County of Flanders", 0, 0.9, default_kingdom_relations, []),

Possibly features for the future?
 
I think I have read somewhere one Developpers (I think Cem) saying they had the idea of making M&B a historical game, but skipped the idea.
 
Highlander 说:
Buxton 说:
Sigh, I'll have to start doing some work then?
Yes. Less talk more work. Now go.

Haha, I can't currently download the new M&B since my internet cuts out. But I've been fiddling with the MS and I easily know how to work with explosions and animations.
 
Highelf 说:
The stuff I've seen so far is amazing. :eek:

There's so much possibilities.

lol Highelf your like a kid in a candy shop
well actually you all are.  Im gonna have to see what this is all about. Sounds quite nice.
 
Nice...
Nice timing too, I have holidays starting this friday...two weeks of M&B playing and learning to mod!  :mrgreen:
 
I've got a limited knowledge of the module system, but woah.

Editable skills and animations.  :smile:
And module_presentations looks to have absolutely insane potential, considering the 'RTS' panel is all modular...

I'm wondering if real-time ship movements and cannons would be possible in Pirates! with an overhead map. And a ship hitpoints bar in the corner. And ammunition meter. And a Grog counter.

Or maybe more advanced magic systems that aren't just fireball crossbows.

Loads of stuff that used to be hard coded now isn't (or maybe semi-hard coded. The scripts are called to work out various hard coded bits)
More highlights:

# script_cf_get_random_kingdom_hero_as_lover
:neutral:

# This script is called from the game engine when the player reaches the shore with a ship.
##  ("diplomacy_make_kingdom_independent",
# script_recruit_troop_as_companion
# script_enter_court
# script_find_high_ground_around_pos1
# script_cf_turn_windmill_fans
 
:smile:

A lot of this new stuff looks really promising.  They've definitely added orders of magnitude to what we can accomplish.

I will probably play .891 tonight to see how it feels and then start porting Calradia at War over tomorrow. :razz:

s/g
 
Thats recent script with France and whatnot. I thought they scrapped the historical angle long ago? Maybe it made a brief comeback.  So from fantasy to pseudo-historical to historical and back to pseudo-historical. The best thing about pseudo-historical is that you dont have to wade through 1,000 posts of "but 13th century french knights wore x,y and z, not a and b".  Just ask the Total War developers how much fun that is. 
 
Looking at this code:

插入代码块:
{reg1} {s1} {reg2?accept:accepts} to join you. What is your answer?

Is it safe to assume that the ?: inside the third set of braces is the ternary if:then:else operator? The code seems to only operate on zeros and ones, though this will greatly expand strings, along with the string literal operator @
 
["torch",        "Torch", [("club",0)], itp_type_one_handed_wpn|itp_primary, itc_scimitar, 11 , weight(2.5)|difficulty(0)|spd_rtng(95) | weapon_length(95)|swing_damage(11 , blunt) | thrust_damage(0 ,  pierce),imodbits_none,
[(ti_on_init_item, [(set_position_delta,0,60,0),(particle_system_add_new, "psys_torch_fire"),(particle_system_add_new, "psys_torch_smoke"),(set_current_color,150, 130, 70),(add_point_light, 10, 30),
])]],

:eek: Just  :eek:
 
Hmm.... seems like most of the stuff we wanted to do in Age of Ash would be fairly easily possible now.  :sad:

Wow, seems like some truly wonderful new stuff. :smile:
 
状态
不接受进一步回复。
后退
顶部 底部