Coding Task List - Before IB2 Initial Release

Discuss anything in general about the IceBlink Engine + Toolset project (or anything else) here.

Coding Task List - Before IB2 Initial Release

Postby slowdive » Sat May 07, 2016 5:10 am

Start of the task list (need to be sorted still... to be updated by Karl and Jer as we go)

Beta v23 of IB, Release Date Goal: Soon

23. New feature: a turn on the scroll wheel of mosue should make a faded log visible again (and scroll through log)

26. new (old) Feature: delay turn. Place Player character at end of move order. This will allow to move a big party in a more coordinated way, less skipping of turns cause initiative order was rolled unuckily. e.g. figher behind wizard in choke hole rolled better ini but cannot move past wizard.

2. Main map floating text: make sure that all floating texts are immediately wiped once area is changed (note: different in seamless map system for nieghbouring maps)

3. Add exclusive raise dead script (or modify existing rest and raise scripts)

5. An enemy archer was able to step on the square of my alive, conscious and non-hidden thief; ie they shared the same square in combat

6. Large creature combat attack animation is not working properly with combatSmoothMovement off

7. Besides xp bar, a "+" indicator above portraits for level up might ge a good thing (on main map view)

12. The in combat mouse over info text shows unconscious and bleeeding characters (hp smaller 0 but above -20) as dead already. A bit misleading.

13. Tiny new ftaure: a save completed message to log for manual saves like alreday exists for quick saves

14. A tiny exp bar over portrait top for any character might come in handy; might scale its x dimension by current exp divided by exp needed for next level

15. The mouse over info in combat shows creature AC in the new way (higher better), while character AC is dispalyed the old thac0 way. Likely best to harmonize the mouse over info, depending on the AC system chosen by author

16. Minor heal spell of my cleric somehow failed to work when trying to heal a character with negative hp outside combat (but yet alive, ie more than -20 hp). No healing effect, but sp were consumed still. Had to use heal potion which did the trick then (NOTE: This worked later on, so mayhaps it was just a user error of mine and this bug does not exist)

17. Character creation: token selection and portrait selection screens: First of these screens shows a 1/10 which changes into a 2/20 next screen. Likely it's supposed 1/20 from first screen? Also, the selection screen (Tokens/Portraits) always shows the last page used, even when doing a new character. Finally, it's alwas 1/10 when (re-)opened, even if e.g. the third page is shown.

18. Character creation: help button in trait selection screen does not show anything when clicked


22. First text box after starting adventure: Content could be expande a bithere (e.g.more movement options via keyboard, arrow keys or numblock), passing of time, torches, rations, all such stuf could be explained a bit here if such systems are used)


24. Info floaties on tap/mouse over stay even after the party moves again, but they are not position adjusted. This leads to the floaties hovering over the wrong position after party move. Same in combat when tapping for info and moving camera afterwards.


30. NEW (spell/effect system):
- Spell property: additional log text on succesful cast (author made effect description)
- for damage effects: save roll (1) negates or (2) halves damage property
- for creatures and player classes and maybe items?: alternative label for the word cast (when used in log), like "shoots", "evokes", "produces", "hurls", etc.

32. KARL:Thinking about extended mouse over info in combat (especially to keep a better track of active effects left and right); It might draw on top of log (only while mouse over, ie the log itself does not change), using an opaque scroll as background and displaying text info for creature/pc, ia with effects and time remaining per efffect as well as ambience text and /or trait check bound binus info on cretaures

34. KARL: Saving throws might get a bit more functionality by adding two additional properties:
1) when effect has damage: full negation of damage or only half damage
2) when effect has duration: repeat save every round or just allow saving throw in first round. When a repeat save works, it will remove the whole effect immediately

36. KARL: I think I will also try to sort the not used/old system fields from spell editor and effect editor into separate subcategories. This way new authors will have an easier time understanding how the spell and effect system works.

- make w,a,s,d movement keys for main map, too (and remap other existing functionality)

- add footstep trace graphic on last square, simple leg animation option and footstep sound (later maybe based on a tiel property, like stone, metal or woodland)

- right button down could be used to move the camera around in combat (in addition arrow key)

- give mosue cursor a more stylish custom graphic

- music and sound effects should be two different toggles (again?; like in battle already), liekly also different voulme settings for music and sound

- maybe some midscreen messages like "Battle started" or "Victory!" or "Party defeated", maybe each with an accompanying sound effect

- it would be convenient if the spell selector screen (coming from mainmap) would display the portraits, too (in order to see current hp and sp of the whole party, eg. for having an easier time remmebering whom to heal)

- also same spell selector screen mayhaps should not automatically exit to main map after casts, allowing for several healing spells in a row

- Phil: a bit stuck on the exploding zombies at the minute though. They are set up so that if they hit a PC they cast the "explode" spell. This is an AOE spell with a range of 1, so it always kills them in addition to hitting whatever is stood next to them. The spell triggers fine and the damage is fine, but for some reason the fiery animations don't trigger. I've played around with it a lot from the version I uploaded and I still can't figure out why. I've now got it set up as basically being a replica of the fireball spell (but with a shorter range), but even though it is set up with same animations and AOE the exploding animation doesn't trigger. It's not a big problem, really, but it would be a nice-to-have if anyone can

Already completed (but not published):

4. Sometimes when opening a chest (first time?) the buttons at the bottom are not "take buttons", but "equip buttons" actually

28. Found and fixed crash bug that could occur when showing the grid in battle (code formerly tried to draw walkability and LoS info for off-grid squares; reason was mistake of mine when implementing manual combatCam.

29. Can confirm the freeze bug Dorateen already mentioned now (creature does not finish turn, initiative bar on). In my case it was an offscreen enemy archer attacking an offscreen pc. Must check camera code for this situation...Fixed freeze bug above (needed adjustement of CalculateUpperLeftCreature() method from screenCombat class and also of the code for ranged attackers): The manualCam will now autocenter on ranged attackers and casters when those cast/shoot. I disabled the more complex code for trying to find camera point that always shows ranged attcker/caster and target point on screen for now. In short, the manual cam will alway center (like autocam), but not when creatures just move. This still makes a big difference in combat handling speed in large battles with many creatures creeping forward on all sides offscreen.

20. KARL: Character creation: the left and right choice selectors/arrow shaped button for eg race or class work a little odd becuase when first clicking right and then clicking left I do not end up on the the originally displayed race/class but a different one

1. KARL: Draw full party on main map : fix some minor bug with the walking order (there are changes in position when either walking left or right it seems); display of full party on screen (mini sprites): still some odditiy with this display, positioning is a bit off sometimes (depending on facing of party and number of chars there ar unwanted overlaps and gaps); also fixed for mini and tiny party/prop scale

19. KARL: Character creation: text boxes that open when clicking beginner's guide, help or player's guide all miss scroll bars for showing the full amount of their Content

9. KARL: Also there is no music looping after a piece has finished

8. KARL: New music does not start upon area change; ie an area change turns music off (can be manually fixed by turning music toggle off and on again)

11. KARL: Unconscious pc in combat still cause nearby enemy archers to get a -4 penalty for shooting out of melee situation. Should likely be changed.

25. KARL: Creature cast spell actions miss a log description in combat, eg "Goblin Lawgiver casts sleep spell".

10. KARL The -4 penalty to shoot floaty for a pc shooting from melee range appered again for the next melee pc; generally soem combat floaties seem off context

KARL: Fixed crash bug for smooth movers in combat when last remaining creature was offscreen.

KARL: Made laughing death skull appear for player chaarcters only if these actully die, ie reach -20 hp or less. Unconsciousness and bleeding is indicated by the red half transprent frame on top of such a player charater's sprite.

KARL: Fixed crash bug that occured when only living player character was stealthed and AI could not find eglible target. If no other targets can be found a deStealth takes place in such a situation.

KARL: Lots of work on combat floaties. I think I nailed them all now (no wrong timings/dublications), including different palcement of attack bonus for held targets (shown on location of attacker now, not on location of target). Also summing up different situational floaties into one floaty.

KARL: Removed call of sf.worldtime each round in combat - that one lead e.g. to double considerations of some regenerations traits. Also, it would cause too much time to pass in combat as it is (it uses timepersquare which can be hours on a large scale map).

KARL: Making the amount of attack from behind bonus for creatures depend on module settings, too - was fixed +2 beforehand.

KARL: Changed player facing in combat (yellow arrows) to be only drawn if pc.hp > 0.

KARL: Added immunity combat log info if entry in affectNever list is found.

KARL: Corrected entry for stealth off to be fully shown in combat log (looks like the"<" combo messes around in html, not being interpreted as sign but as a command).

KARL: affectNever / affectOnly system for effects implemented (engine and toolset, e.g.for making undead immune to sleep effects); works via traits for player characters and local strings (value) for creatures

KARL: Spells can have more than one effect now (needs more field testing for bugs still though). Also, I prepared spell editor in toolset for this. To keep old spells compatibe, I use a layered approach here: If the new list with effect tags contains no entries, the old single spell effect tag is used.

KARL: Effects happen at start of pc/creature individual turn now.

KARL: Buffs/debuffs are redundand properties now. Everything with duration greater 0 is considered as buff/debuffs. If duration of an effect is set to 0 (instaneous effect) it's applied just in moment of casting (heal/damage/remove effcts) and that's it. When duration is greater than 0 (effect on target turn), the damage/heal component of effect is not applied in the moment of casting, but the effect is just added to the target's effect list. The damage/heal compoent of the effect is applied first time when the turn of the target creature/pc comes (see above) and the whole effect is removed once the duration has run out.

KARL: Lot's of work on the description of effects (resistances, saving throws, remaining durations, etc.) in the combat log.

KARL: Draw creatures on top of dead/uncosnicous pc.

KARL: PC with 0 hp are not chosen as direct attack targets any more.

KARL: Fixed that the targeting code for the center of an AoE hinders direct targeting an enemy with a friendly spell, but the effect application on all targets within in the affected area around center point is not taking this into consideration. Same vice versa for hitting friends with enemy spells.

31. KARL: @screen size: That's a 16/10 aspect ratio and likely the screen layout expects more like 16/9. That will take longer for me to look into, but in the end all common aspect ratios should be handled correctly, of course. IB has no ingame screen settings, but indeed takes desktop res (well, that's what I think as Jer knows much better).

KARL: Aha, containers and stores are basically lists of itemRefs (as well as the party inventory, too). My code copied between itemRef lists, transfering the isRation property. With the give item script it works a bit differently - this one cretaes a new itemRef based on the parameters entered. I did not adjust the method responsible for this itemRef creation (createItemRefsFromItem), which caused the newly created rations - or better their itemREfs - miss data (correct state of isRation property in this case). This modified method should fix the bug now (in v22 then, sorry for the inconveniences in the meantime) [SNIP]

35. KARL: Something that would add more tactics to our battles might also be a removeEffectWhenTargetTakesDamage property (better dont wake those sleepers too soon :mrgreen: ). It will be hasslesome to add though mayhaps (due the various sources of damage and their different sections in the code).

21. KARL:New feature?: Looks like spell points for all casters come form intelligence? Ideally it could be set per class which attribute is responsible for the amount spell points (eg. wisdom for clerics)

33. KARL: As a fan of blood magic, I think I will also add optional hp cost of spell casting.

JER: 2. Combat: finally get event squares in, with graphic symbols and easiy setp up via toolset

KARL:Have a deep look at trait system (permanent passive traits and interface for active traits)

JER:Tall, wide and large creatures in combat (I am adding an additional creatureSize property to Creature class, working with 1 to 4 like IBMini; assuming 100x100, 100x200,200x100, and 200x200 correspondingly)

KARL:Reduce savegame size by not storing tile and EncTile info in savegames

KARL:conditional traits (as in: these traits work only with right equipment worn or meeting other author defined conditions), actvie and passive

KARL:: Animated props, in detail:
The follwoing properties of a prop let you control its main map animation (all in code already):

"maxNumberOfFrames":1
Setting this value to anything above one indicates an animated prop. The engien will assume as many animation stages (frames) as you define here.

"updateTicksNeededTillNextFrame": 100.0,
The speed of the animation. A higher number means slower here. If you want e.g. have an animation at double speed set this to 50.

"chanceToTriggerAnimationCycle": 100.0,
The chance that the animation is started (and restarted). Lower means you will see the animation happen less often over time. 100 means a continous animation, repeating itself all the time.

"propFrameHeight": 100,
The y height of one anmation frame. Usually this is 100 pixels (e.g. creatures in combat with 2 frames are 100x, 200y). But for large or small token/sprites you can adjust the size accordingly here. Please not ethat propFrameHeight multiplied with maxNumberOfFrames should equal the full y height of your sprite sheet.

"sizeFactor": 100,
This determines you much you want to enlarge or shrink the animation onscreen. A value of 200 e.g. would doubel x and y dimension of the animation,. dispalying it over four map squares instead of one. Please note that you always place the top left corner of the animation in toolset.

"doOnce": false,
This animation runs only once (unless reactivated via script).

"animationIsActive": true,
Turn animation on and off.

"hiddenWhenComplete": false,
The animation (and therewith the whole prop) is invisible when it's not currently running through an animation cycle.

"hiddenWhenNotActive": false,
The animation (and therewith the whole prop) is invisible when it's not currently active.

Also: number of anmiation cycles to do when the animation chance is triggered. DoOnce also takes this number into account.

Also: optional fade in/fade out.


JER:Jer's newly added script for adding creatures to encounters [note: must still synch with last fixes for this for IBMini]

KARL: Fixed bug leadingvä to main screen from combat after inspecting a character's powers mid battle

- added master/link system for creating dynmaiclly linked maps: for easily setting up intertiors that still show their outdoor surrounding, think: blend away roof (just greyed out a bit); very easy to do vertical gameplay logic this way (stacking maps in a graspable and intuitive way on top of each other, ie you can Play adentures on the roff and in the bulidng rooms underneath it)

- added filter system for tiles

Fix exploit in char creation/level up: - Zach: When you create a character, you can exit out of spell/power selection (after trait selection) to return to the main character sheet. Clicking finished on this page will put you back at the traits page with the option to learn another -- only this time you will already know the trait you selected last time.

7. KARL: Add in the height system (via cleverly drawing shadow tiles on top of neighbouring tiles of lower height level, make height level part of the area editor for each tile in toolset; teach AI to not move acrooss different height levels with the exception of staircase/ramp squares)

4. Sometimes when opening a chest (first time?) the buttons at the bottom are not "take buttons", but "equip buttons" actually

27. Repeatable encounters, even when won already



Initial IB2 v1.00 Release Date Goal: July 2017

1. Minimap for seamless map system (always center the player, stitch together from neighbouring maps minimaps, display full screen effects as sea on the minimap)

3. Set up scripts and underlying code for calling dynamic full screen effects.

4. Get rid of of weather effect editor from toolset (not used anymore); Note: the weather editor itself can remain as the string that represents the weather and the lists for next weather are still used for calling the right sprites

5. Big code clean for all the 1000+ lines of effect channels not neeed anymore

6. Bring IBScript uptodate, teaching it all the new properties (sigh, already hate that one...)

8. Ingame options menu

9. Load from within game functionality

10. Difficulty Levels (starting with simple enemy damage and hp modifiers)

11. Allow mouse over info on shown parts of neighbouring maps (seamless map system)

12. Diversify and improve combat AI, especially when new effects in guise of spells and special attacks are placed in the hand of the AI

13. Have time driven movers appear on next in line waypoints when entering a fresh map (they appear on last in line waypoint right now, I think)

14. Implement sprite/particle effects tied to props (i.e. flame effect tied to torch prop)

15. Implement vertical seamlessness (see through holes) and high bridge squares

16. Traits: attribtue requirements and quest based (global variable) based requriment for picking those on level up

17. Add more restricted and challenging optional save and reload system

18. World map. In addition to minimap, a world map toggle might show the whole explored world as separate abstract map for orientation and overview (whole new image, not build from parts of the existing map graphics); at some locations ingame the very same version of the world map might be usable for quick travel, mayhaps coach stations or moonstone like Portals

19. Already known traits and traits not available yet might be perhaps graphically better distuinguished on level up screen for an easier quick orientation (in addition to the already exsiting colored text info on top of screen)

20. thinking about optional creature idle animation for battle, like another column in the sprite sheet (mayhaps too demanding memory wise, also pushing artist production time up; then again no one would be forced to use it)

To Be Completed for IB2 Patch after release, after July 2017

1. Add a scrolling camera for cutscenes as well as switching between actors in comabt (best way to provide orientation on battlemap)

2. Research possibilities of zipping/storing the thousands of tile graphics (when using allTileSystem) to an archive that can be accessed on runtime fast enough withpout butchering fps

3. Extend mainmap movement of chase and patrol AI to work across neighbouring maps and mayhaps even through other map transitions

4. Draw all movers correctly across neighbouring maps

5. I also look forward to writing (with Jer) an extended and comprehensive guide (more a book then) for the whole thingie. A document to stand the test of time and help future authors using IB when these coders here are just dust in the wind :mrgreen: .

6. think again about some form of scrolling while left mouse held down (chunk move via left mouse down is already in in IB2)

(move tasks here from above that are not higher priority for initial release)
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 2708
Joined: Wed Nov 21, 2012 11:58 pm

Re: Coding Task List - Before IB2 Initial Release

Postby youngneil1 » Sat May 07, 2016 7:47 pm

Ah, there it is :) . Good to have it here before it gets buried in the quicksands of time... any part on the list (or elsewhere) you would prefer to pick up first?
User avatar
youngneil1
Backer
Backer
 
Posts: 4121
Joined: Sat Dec 08, 2012 7:51 am

Re: Coding Task List - Before IB2 Initial Release

Postby slowdive » Sat May 07, 2016 8:32 pm

youngneil1 wrote:Ah, there it is :) . Good to have it here before it gets buried in the quicksands of time... any part on the list (or elsewhere) you would prefer to pick up first?


I would say go through the list and put your name next to what you want to work on next or want to reserve for later. I'll do that myself.
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 2708
Joined: Wed Nov 21, 2012 11:58 pm

Re: Coding Task List - Before IB2 Initial Release

Postby youngneil1 » Sun May 08, 2016 6:43 am

Good, after having finished the fading graph grid (tied to areaVisibleDistance, supporting up to 3 squares radius, a bit circular shaped) I will finish the weather, Nr. 8 on the list.
User avatar
youngneil1
Backer
Backer
 
Posts: 4121
Joined: Sat Dec 08, 2012 7:51 am

Re: Coding Task List - Before IB2 Initial Release

Postby slowdive » Mon May 09, 2016 5:13 am

Made some code fixes for combat and updated above task list.
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 2708
Joined: Wed Nov 21, 2012 11:58 pm

Re: Coding Task List - Before IB2 Initial Release

Postby youngneil1 » Mon May 09, 2016 5:40 am

Awesome, good to see these hunted down :D !
User avatar
youngneil1
Backer
Backer
 
Posts: 4121
Joined: Sat Dec 08, 2012 7:51 am

Re: Coding Task List - Before IB2 Initial Release

Postby youngneil1 » Wed May 18, 2016 7:07 am

Ha, just saw the different "Jer" tags in front of many tasks, awesome :) ! Still deep in task Nr. 8 (weather) here, but I see the light at end of the tunnel :lol: .
User avatar
youngneil1
Backer
Backer
 
Posts: 4121
Joined: Sat Dec 08, 2012 7:51 am

Re: Coding Task List - Before IB2 Initial Release

Postby slowdive » Sat Jul 16, 2016 8:11 pm

I removed my (Jer) tags from the task list so anyone who wants to work on those tasks can volunteer and once completed can submit a pull request from the GitHub repo. I'll keep working on IB mini and as I introduce any new systems all sign up for the tasks here and merge the code over into the IB2 code.
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 2708
Joined: Wed Nov 21, 2012 11:58 pm

Re: Coding Task List - Before IB2 Initial Release

Postby youngneil1 » Sun Jul 17, 2016 12:00 pm

Good to know, I will try to tackle the one or other along the road. On we go, hey hey, whistles cheerfully :D ...
User avatar
youngneil1
Backer
Backer
 
Posts: 4121
Joined: Sat Dec 08, 2012 7:51 am

Re: Coding Task List - Before IB2 Initial Release

Postby youngneil1 » Tue Aug 30, 2016 9:58 am

Updated list a bit, moving a few goals into completed section, a few other in post IB2 release section and finally added a few new ones (hey, I was focused when releasing IB, v21, wasn't I :lol: ? Time for feature creeping fun again ;) ).
User avatar
youngneil1
Backer
Backer
 
Posts: 4121
Joined: Sat Dec 08, 2012 7:51 am

Next

Return to General IceBlink Project Discussions

Who is online

Users browsing this forum: No registered users and 4 guests

cron