52 Commits

Author SHA1 Message Date
Aaron Suen
f509f9fba8 Change eye height when swimming
Suggested by oilboi to make the swimming eye
height match the model anim.   There is a bit of
jank switching between swimming and standing
height, but it doesn't seem to be too bad, and it
makes players have to actually break the
surface to breathe, and makes swimming a little
less bizarre in 3rd person view.
2020-06-16 21:14:11 -04:00
Aaron Suen
e0156b4742 Add profiler instrumentation metadata everywhere
N.B. the MT built-in profiler doesn't yet actually support reading
labels from bare-function registrations, so a builtin hack is
needed.
2020-06-15 07:21:39 -04:00
Aaron Suen
dc347a3ffc Add another admin "cheat" code
Add a hand that can dig pretty much anything
in the game that's supposed to be diggable,
and a shortcut command to summon one.
2020-06-14 09:15:00 -04:00
LoneWolfHT
a6d52f5942 Add second layer to player model 2020-06-10 12:33:04 -07:00
LoneWolfHT
bf72a05da1 Apply lots of sunscreen to player neck 2020-06-09 16:34:11 -07:00
LoneWolfHT
079c1ebe79 Add waving anim 2020-06-09 12:33:40 -07:00
Aaron Suen
11438a1625 Deprecate ent_prop_set() method 2020-05-25 11:43:51 -04:00
Aaron Suen
fe23c34208 Player buoyancy fixes/refinements
- Nerf effect by 50% to be less disruptive
- Effect can be avoided by not being in a
  swimming position (matching model anim)
- Refactor swimming check into API
- Special checking and handling for linkdead
  players, for whom client knockback
  wouldn't work anyway.
2020-05-22 07:30:12 -04:00
Aaron Suen
afa36f1236 Standardize obj property setting.
This should more reliably minimize network traffic
incurred by excess property setting.

We could probably standardize a few more things,
like set attach, anim, yaw, pos...
2020-03-25 09:20:37 -04:00
LoneWolfHT
36d8a173e4 Fix hand UV and improve swim anims 2020-01-31 18:22:42 -08:00
Aaron Suen
31e659b90d Animation speed fixes
- Adjust animation speed to walking speed.
- Fix fwd+back and left+right cancellation.
2020-01-26 16:34:13 -05:00
Aaron Suen
dda8a58bae Make the base model anim data public too.
This allows overriding the data to use the same
logic but a different model, overriding the function
to use the same data but different logic, or both.
2020-01-20 21:32:59 -05:00
Aaron Suen
1c914568c0 Fully API-ify player model.
Mods can now override all player visuals, including
animations, model, scale, etc.  Full functionality
via overriding API methods.  Simpler overrides for
skin and mesh by setting player meta attrs.
2020-01-20 21:25:56 -05:00
Aaron Suen
4d47ab2e75 NC API dependency simplification.
Treat all API mods as a "layer", and use the new
nc_api_all registration to indicate that a mod depends
on the NC API (which ALL NC mods assume they do).
This means that each non-API mod does not need to
worry about which API mods it really needs and which
it does not, nor will they need to be updated for any
internal API restructures.

This is a game, not a modpack, so all mods will be
loaded anyway, and we only care about order.  That
means that we don't really need to worry about
having excess dependencies because any mod we
don't actually need will be needed by something that's
loaded anyway.  If somebody wants to reuse a
component elsewhere, they're likely to need to do
some work to untangle it anyway, because of the
amount that NodeCore mechanics interact and
interdepend.
2020-01-05 12:59:12 -05:00
Aaron Suen
dcfc80b367 Remove explicit names in mod.confs. 2020-01-05 12:38:45 -05:00
Aaron Suen
4291592b78 Fixed player model UV mapping by Elkien. 2020-01-04 01:07:08 -05:00
Aaron Suen
10f3ce71a3 Return raw layers to mod overrides too. 2019-12-24 12:27:05 -05:00
Aaron Suen
15fecf01cb Player skin overhaul.
- Make skin overridable by mods.
- Add a second skin customization method via meta.
- Remove holiday skins; should be a separate mod.
2019-12-24 11:21:45 -05:00
Aaron Suen
d7819762e5 Full proper support for spectator mods.
If players are invisible, NodeCore will not add any visible or
audible effects for them, allowing such players to be completely
non-interactive with gameplay.

This allows things like spectator or stealth-admin mods to
function properly.
2019-12-11 06:52:09 -05:00
LoneWolfHT
3e793863ff Add bandolier bone 2019-11-25 18:29:53 -08:00
Aaron Suen
a0bdf98ca1 Major damage simplification.
- Healing rate is always the same, regardless of environment.
- Remove visible damage from player.

Lasting injury has just never really been a major gameplay
factor, and making players wait to heal under certain
circumstances did not feel like it made gameplay "better" in
any way.

Now, if you get hurt, you drop your stuff, and have to wait a
MINIMAL amount of time before you can pick it up again.

Similarly, with visible inventory, the damage textures are
redundant, and with the gameplay importance of injury being
so diminished, they were visual overkill.
2019-11-20 23:58:42 -05:00
Aaron Suen
a9531b5225 Show bandolier slots as placeholder ents. 2019-11-18 20:28:58 -05:00
Aaron Suen
c147da4dde Convert from depends.txt to mod.conf 2019-10-05 11:24:16 -04:00
Aaron Suen
6a012aeacb Move all src dirs to subdirs of output targets.
This should make organization a little more consistent, and more
specific.
2019-10-04 19:13:30 -04:00
LoneWolfHT
310206dd4e Add swim animation and increase size of head overlay 2019-09-14 11:23:00 -07:00
Aaron Suen
310ce1bc6c Treat NodeCore as a unified thing.
- Collapse all nodecore "core" mods in the /mods listing, so it's
  easier to find the actual add-on mods.
- Parameterize in-game branding to make renaming derivatives just
  a little easier.
2019-09-07 09:08:57 -04:00
Aaron Suen
39dea8a2ae MAJOR: Code quality audit using luacheck.
- Removed lots of unused variables, a few shadowed identifiers.
- Removed a few sections of dead code.
2019-08-31 09:26:53 -04:00
Aaron Suen
fe2c153f9e Clean up all lua code style.
Formatting rules based on Paul Kulchenko's perl-based formatter...
http://notebook.kulchenko.com/programming/lua-beautifier-in-55-lines-of-perl
...using a single tab for indent.

Mostly pure whitespace changes.
2019-08-27 19:14:51 -04:00
Aaron Suen
fd52006a7a Image optimizations. 2019-08-19 22:31:00 -04:00
Aaron Suen
d92f40b494 LoneWolfHT sent a new model.
- Tweaked some proportions to be more realistic.
- Fixed the hat/hair overlay (it's subtle but present).
2019-08-12 21:04:07 -04:00
Aaron Suen
f3115fce2b Incorporate LoneWolf's model updates, sent via discord. 2019-08-09 08:54:05 -04:00
Aaron Suen
41963a009a Exclude some large files from exports.
- Consolidate any "source-only" files into "src" dirs.
- Exclude "docs" dir, mainly in root atm.
- Exclude all dotfiles.

This significantly reduces the size of delivered files, since
esp the player model .blend file is very large.
2019-04-09 07:54:46 -04:00
Aaron Suen
68d996e1f3 Begin EOS for MT 0.4.
We actually haven't been testing in 0.4 at all for quite a while
now.  Since this is a standalone base game without complex
interdependency relationships, there isn't really any need to
maintain compat with old versions of the engine.  Players can
upgrade to play; keeping a separate copy just to play on old 0.4
servers is even still an option.

There is some internal cruft that has been building up to support
0.4, and this allows us to purge most of it.  The larger benefit
may come when we're able to remove line_of_sight in favor of the
more efficient raycast (still yet to be done).
2019-04-06 11:21:34 -04:00
Aaron Suen
d41e208d87 Switched from fire alpha to gentle animation. 2019-04-04 08:26:53 -04:00
Aaron Suen
c39cabf18d Be more conservative about swimming only when there is enough fluid 2019-04-04 02:01:49 -04:00
Aaron Suen
db60a86fc6 Swimming animation code refinements.
- More sophisticated swimming liquid detection, which also handles
  some corner cases a little more smoothly.
- Use the "walk+mine" animation for digging while treading water.
- Clean up anim code and merge speed table with animations.
2019-04-04 01:48:54 -04:00
Aaron Suen
4d53a36345 Merge new swimming animations by LoneWolfHT.
Note that set_local_animations has been removed, to be able to
support these new animations when using local 3rd-person view.
It's expected that this MAY cause 3rd-person view animation
change lag in 3rd-person view when network lag is a problem,
but we don't expect this to be very much trouble in practice...
2019-04-04 01:25:25 -04:00
LoneWolfHT
f6d8dad3fa Add swimming animations 2019-04-02 13:47:41 -07:00
Aaron Suen
fd8ebb78c7 Reduce skin update frequency. 2019-04-02 08:23:09 -04:00
Aaron Suen
20b489dca5 A little bonus fun content. Could use some future expansion. 2019-04-02 08:08:14 -04:00
Aaron Suen
ff57c0aaba Replace suicide command with stuck command.
It does something similar, though it doesn't send you back to
spawn, just "phase shifts" nearby.
2019-03-11 23:00:42 -04:00
Aaron Suen
c0e68a24b4 Add basic glass nodes, new textures. 2019-03-07 19:26:53 -05:00
Aaron Suen
3bef72b665 Unify detecting old version of MT. 2019-03-03 12:08:47 -05:00
Aaron Suen
6c8a07d473 Remove HUD player name wield item description.
This is now covered by the wield view ents.
2019-03-03 01:01:18 -05:00
Aaron Suen
184194bb24 Make ears a bit smaller. 2019-03-02 13:47:20 -05:00
Aaron Suen
e853a0d504 Make player model a little more demographically neutral.
Also, tidy up clothing.
2019-03-02 13:39:46 -05:00
Aaron Suen
0b879d59bf Make the player just a little smaller.
If 1 node = 1 meter, then the player is now 180cm tall, which is
about the 70th percentile, instead of 200cm, which was the 99.9th
percentile (unrealistically tall).

The model's head also sinks into the ceiling much less at the
height of a jump.
2019-03-02 12:02:08 -05:00
Aaron Suen
46cefb3bc6 Fix model coords/position in 0.4.
Detect MT version and swap out a coordinate-transformed version of
the model.
2019-03-02 11:32:47 -05:00
Aaron Suen
b94d04159e Buff base player walking speed.
Players can't "sprint" currently, so hopefully this should make
exploration about 20% less tedious, and reduce the temptation to
rely on using the "fast" priv.
2019-03-02 11:16:22 -05:00
Aaron Suen
0350960762 Remove redundant license file.
Per CONTRIBUTING terms, licenses are combined.

Also, this mod is no longer PURELY LoneWolf's work (mostly just
the model is intact, and the code/textures are largely mine) so
the copyright statement in this license file was not really
reflective of the totality of what it covered.
2019-03-02 10:56:16 -05:00