Commit Graph

11968 Commits

Author SHA1 Message Date
Imbris
5e5f7885e5 Tiled guillotiere allocator for sprites working 2022-07-01 23:47:41 -04:00
Imbris
b1f5fc01db Before removing variable size edge tiles 2022-07-01 23:47:41 -04:00
Samuel Keiffer
0bd08b1f9e Merge branch 'socksonme/rework_sct' into 'master'
Rework SCT

See merge request veloren/veloren!3126
2022-07-02 02:42:42 +00:00
Imbris
6c8970f6fd Merge branch 'imbris/voxygen-compile-time' into 'master'
Improve voxygen compile time with small tweak

See merge request veloren/veloren!3449
2022-07-01 08:22:05 +00:00
Imbris
e9ed7007ec Convert hashmap to array of SpriteConfigs to ensure we keep quick lookup times since this is queried for every block when processing a new chunk, 2022-07-01 03:34:35 -04:00
Marcel Märtens
b5d0ee22e4 deactivate some features again and only keep the internal code for now to reuse it in automatic reconnect code 2022-06-30 22:14:24 +02:00
Marcel Märtens
f3e4f022cb rather than letting the api/Participant handling the cleanup, we had to move over to the bParticipant::shutdownmanager.
Because the old case didn't account for the Scheduler got dropped but Participant keept around.
Shutdown behavior is quite easy now: bParticipant sends a oneshot, when that hits we stop. also when Participant gets droped we still stop as there woul dbe no sense in continue running the report_mgr ...
2022-06-30 22:14:24 +02:00
Marcel Märtens
5b63035506 Add a new/unstable functionality report_channel.
This will ask the bparticipant for a list of all channels and their respective connection arguments.
With that one could prob reach the remote side.
The data is gathered by scheduler (or channel for the listener code).
It requeres some read logs so we shouldn't abuse that function call.

in bparticipant we have a new manager that also properly shuts down as the Participant holds the sender to the respective receiver.
The sender is always dropped. inside the Mutex via disconnect and outside via Drop (we need 2 Options as otherwise we would create a runtime inside async context implicitly o.O )
(also i didn't liked the alternative by just overwriting the sender with a fake one, i want a propper Option that can be taken)

The code might also come handy in the future when we implement a auto-reconnect feature in the bparticipant.
2022-06-30 22:14:24 +02:00
Socksonme
4e4c466925 Move changelog changes to bottom 2022-06-30 07:26:31 +03:00
Imbris
291a424b4e This seems to save at least 30 seconds (out of 90 to 120 secs) when tweaking TILE_SIZE in voxygen/src/mesh/greedy.rs (NOTE: I did some more timing, see associated MR description) 2022-06-30 00:11:04 -04:00
Marcel
5284e9ec94 Merge branch 'james/triggered' into 'master'
Wiring System Documentation and Refactoring

See merge request veloren/veloren!3447
2022-06-29 20:28:10 +00:00
James Melkonian
8439f3ef6d Wiring System Documentation and Refactoring 2022-06-29 20:28:09 +00:00
Marcel
fddc97bc77 Merge branch 'tweaks' into 'master'
tweaks entity stats

See merge request veloren/veloren!3437
2022-06-29 19:29:38 +00:00
Socksonme
6a355c58f2 Remove instance from PoiseChange 2022-06-29 18:36:05 +03:00
Socksonme
da0baa674f Remove hp_floaters whenever they wouldn 2022-06-29 17:31:59 +03:00
Socksonme
d0e8f6f9d4 Edit changelog 2022-06-29 17:31:58 +03:00
Socksonme
b7a718cb99 Remove old comments 2022-06-29 17:31:58 +03:00
Socksonme
f048600335 Add back old i18n + some small fixes
- Fix .filter() for combo_floater
- Rename sct_inc_dmg_accum_duration to sct_inc_dmg, as it was in the
  wrong place

to rebase
2022-06-29 17:31:58 +03:00
Socksonme
f6189a61f2 Address review - addendum
- `BlockFloater`s and `ComboFloater`s don't store the owner anymore,
  `ExpFloater` still does, however the field is used to prevent
  accumulating old floaters with new ones. This change also makes it so
  that if the client changes entity, they keep the old entity's
  floaters.
- The `combo_floaters` field is now `combo_floater` plus it now uses an
  Option<ExpFloater>.
- Changed `handle_health_change` to change the health even if the entity
  does not have a `Pos` or `Uid`, now uses `emit_now`combo_floater` plus
  it now uses an Option<ExpFloater>.
- Changed `handle_health_change` to change the health even if the entity
  does not have a `Pos` or `Uid`, now uses `emit_now`
- Changed some comments
2022-06-29 17:31:58 +03:00
Socksonme
2c5fd06d0b Address review
- Change hp_pulse to not be framerate dependent
- Change some of the HpFloater checks to be inside the find() function
- Remove unnecessary join
- Add back option for showing incoming damage + add option for
  experience accumulation
- Change `ExpFloater`s to not store the owner, as they are only shown
  for the player (will have to see if the implementation is correct so
  that it may be applied to the other floaters)
- Rename `Outcome::Damage` to `Outcome::HealthChange` and `DamageInfo`
  to `HealthChangeInfo`
- Update some outdated comments/documentation
2022-06-29 17:31:58 +03:00
socksonme
8feaea5cdf Exp floater accumulation + ignore all below 0.1 2022-06-29 17:31:57 +03:00
socksonme
eabbfe6a51 Remove damage batch option + crit_mult 2022-06-29 17:31:54 +03:00
socksonme
29ce64b4f5 Small changes to hud 2022-06-29 17:31:43 +03:00
socksonme
0e84794217 change font size formula to not use crit_mult + use ints for change by check 2022-06-29 17:31:43 +03:00
socksonme
3d2dcbf894 Revert some changes 2022-06-29 17:31:43 +03:00
socksonme
559d5ca804 Some changes to DamageSources + various code qual changes 2022-06-29 17:31:43 +03:00
socksonme
762b726d21 basic i18n for english + code touchups
Getting Invalid Probability error when attacking a lot of enemies - needs to be checked out
2022-06-29 17:31:42 +03:00
socksonme
ddf0ba6dd6 Small UI changes + fix hurt animation 2022-06-29 17:31:41 +03:00
socksonme
5533d139bc Slider for accumulated damage duration 2022-06-29 17:31:41 +03:00
socksonme
5360a7c93e Tons of code quality changes, added damage rounding option 2022-06-29 17:31:37 +03:00
socksonme
64f0f05608 Fixed bug with healing above 5.0 and preparing for options 2022-06-29 17:31:10 +03:00
socksonme
db16e6147c Instance inside projectile constructor is now a variable 2022-06-29 17:31:09 +03:00
socksonme
202d558246 Instance number generated inside projectile constructor, remove crit field 2022-06-29 17:31:07 +03:00
socksonme
6c75ad6ef8 Code quality changes and comments 2022-06-29 17:30:54 +03:00
socksonme
c0e78d869e Instance numbers are now based on the AttackDamage struct 2022-06-29 17:30:53 +03:00
socksonme
ac5bf53c42 Instance numbers for HpChanges 2022-06-29 17:30:50 +03:00
socksonme
f8924d6c1a tweaks to damage floaters
Added some comments where stuff needs to be discussed
2022-06-29 17:30:32 +03:00
socksonme
7a1e19d42c Crits now only glob with eachother, now show up like healing
Still a WIP, need to change crits to being non-floating and try implementing crits popping, need to remove some debugging stuff later
2022-06-29 17:30:29 +03:00
socksonme
ce95680df9 Addressed comments, health and damage floaters are now separated
Enemy healing probably needs to be discussed as it doesn't show up as of now and the way crits are handled also needs to be discussed
2022-06-29 17:29:59 +03:00
socksonme
94f193fbe0 Damage outcomes are now emitted with health change events
Being healed and damaged at the same time still leads to issues - needs to be sorted out
2022-06-29 17:29:19 +03:00
socksonme
634a3095d6 Handling crits (very bad color choice+naming) 2022-06-29 17:24:05 +03:00
socksonme
93d3ce18b4 Remove dbgs and temporary? 0.0 damage fix 2022-06-29 17:24:05 +03:00
socksonme
aee7888a92 HpFloaters are now created by Outcomes, touched up Damage Outcome 2022-06-29 17:24:05 +03:00
socksonme
bf6c6fb33d Changed Damage Outcome to store more data 2022-06-29 17:24:05 +03:00
Imbris
10bbea89e2 Merge branch 'juliancoffee/add_ability_i18n' into 'master'
Add i18n keys to abilities and smol fix

Closes #1253

See merge request veloren/veloren!3446
2022-06-26 19:50:04 +00:00
juliancoffee
3e73fba165 Better naming for shortened key functions
* Old display_shortened that returned Option is now called try_shortened
* What was called try_shortened is now just display_shortest, because if
  shortened version isn't available, it means that regular version is
  already shortened.
2022-06-26 21:59:36 +03:00
juliancoffee
3d1b2735a2 Clean i18n lifetimes 2022-06-26 00:44:55 +03:00
juliancoffee
27e67e79ec (uk_UA) Add abilities translation 2022-06-25 18:19:36 +03:00
juliancoffee
9d928261cb Try to display shortened version of key in diary
* Make try_shortened method that tries shortened version of key or
  regular version if shortened one isn't available
* Use it in most places where display_shortened + display_string were
  used
* Use it for diary skilbar
2022-06-25 18:17:37 +03:00
juliancoffee
8c837da561 Add i18n keys to abilities
* New hud/ability.ron file for ability localizations
* i18n keys are created by adding .name and .desc to ability id. Because
  of how i18n worked (returning key if string wasn't found), it was
  impossible to do because it leads to UB in case string is missed.
  To solve this we've added get_opt method that returns None
* New Localization::get_or method for convinient fallback key usage
2022-06-25 18:17:37 +03:00