Auke Kok 8a62d34438 Major refactor.
All step code is now part of the driver engine:
- sound steps
- factor accounting
- factor-based switching
- animation step handling.

Moreover, there is no more local factor state subtable,
and factors need to return or pass factordata to the
driver method. Factordata is only passed to the .start()
method as well, but that can then store the needed data
into the entity_ai_state as needed by the driver itself.

This still has an issue with entity animation sequence
ends, as far as I can see, in the sheep eat driver. This
will need further work.

finders, drivers and factors are now all in separate files.

The sheep script has been partially cleaned up to account
for the differences

Many asserts were added. We need to keep these until things
become more stable, and possibly add a ton more of them to
make sure we're not passing garbage.

A luacheck file is added to keep things sane going forward.
2017-04-05 00:28:22 -07:00
2016-09-26 09:08:02 -07:00
2016-09-26 09:08:02 -07:00
2017-04-05 00:28:22 -07:00
2016-09-26 10:00:10 -07:00
2016-09-26 09:55:58 -07:00
2017-04-05 00:28:22 -07:00
2017-04-05 00:28:22 -07:00
2017-04-05 00:28:22 -07:00
2017-04-05 00:28:22 -07:00
2017-04-05 00:28:22 -07:00
2016-04-23 16:22:55 -07:00
2017-04-05 00:28:22 -07:00
2017-04-03 10:23:52 -07:00
2017-04-05 00:28:22 -07:00
2016-09-26 11:04:11 -07:00

Copyright (c) 2016 - Auke Kok sofar@foo-projects.org

entity_ai is licensed as follows:

  • All code is: GNU Affero General Public License, Version 3.0 (AGPL-3.0)
  • All artwork is: CC-BY-ND-4.0

except:

  • sound files in the sounds folder are licensed according to their respective licenses (documented in sounds/readme.md).
  • stone_giant.png is identical to default_stone.png from minetest_game and licensed as the original.

["code" means everything in lua files, "artwork" means everything else, including documentation, sounds, textures, 3d models]

The implications of this are:

  1. you can re-distribute the artwork, but only if you: a) properly attribute b) do not modify the artwork

  2. If you deploy the code on a server, you must provide the source code on request to any player on your server.

Any violations of these license clauses terminates your rights to use the software in this matter, and you may no longer operate this software on a server or redistribute it.

 Contributor License Agreement

  By submitting code to the github project, you agree to the following:

  (1) you expressly guarantee that you are the sole author of all
  parts of the contribution.

  (2) you expressly permit the author, Auke Kok, of entity_ai to
  relicense all (your) contributions to LGPL-2.1+ (for code) and
  CC-BY-SA-4.0 (for all artwork) FOR THE SOLE PURPOSE OF MERGING THIS
  CODE INTO MINETEST_GAME[1] SHOULD THIS MERGE OCCUR AND BE ACCEPTED.

[1] https://github.com/minetest/minetest_game

This CLA is present here to (1) make sure this code doesn't fragment and (2) is distributed in a compatible way in the future in minetest_game should this be wanted or preferred. This gives maximum reassurance that contributions to this project are going to be used in the best interest of the minetest_game, and that people who make valuable changes to this project are required to give changes back until such a merge happens. If the merge occurs in the future, all contributions will become available under a permissive license to everyone, encouraging everyone to help with making this code mergable.

  • NOTICE FOR MONSTER ADDITIONS *

The license for any monster using the exported API has to be compatible with the license of the API itself. That means that any custom monster code has to be AGPL-3.0 until it gets merged in minetest_game[1], after which it has to be LGPL-2.1+ or compatible with that. You may choose to license your artwork in any way you see fit, however.

  • SPLITTING UP THIS PROJECT *

In the future, the core API code will be seperated from the monster definitions. Each monster will be it's own mod permitting users to disable/enable monsters as they see fit. This organization will help to keep per-mod specific code out of the core and make core functions better suited to handle all monsters.

Description
No description provided
Readme 378 KiB
Languages
Lua 100%