Giter VIP home page Giter VIP logo

er-online-summons's People

Contributors

vswarte avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

er-online-summons's Issues

Implement summon request protocol

Rework the spawn procedure a bit:

  • In case of a client we should request the host to spawn a summon for us.
  • In case of a host we should listen for these requests and make the decision on whether or not this is a valid request.
  • In case of a host we should spawn the summons and broadcast SummonSpawned to all clients.
  • In case of a host we should never handle SummonSpawned messages as these are meant to inform clients of a new summon.
  • In case of a client we should never handle SummonSpawned from any other lobby member than the host.

Fix Mimic Tear appearance

Currently the way Mimic Tears are rendered is very inconsistent, sometimes it will copy the host, sometimes it will copy the any random one of the other players.

There's also this nasty bug where the blob kinda "stays" where it is after the chrins is fully done with its spawn animation.
My best guess is that we need to figure out how it finds the face + character data for the player it's emulating and hook that to feed it the proper owner of the summon.

Fix summon "following" AI

Currently summons are fixed to following the host. I'll need to hook this and make the AI follow the appropriate player (the summoner).

Implement summon despawn protocol

This protocol should handle the despawn of summons. This involves another request message from the client specifically for despawns and a message to inform clients of the despawn.

One problem with described approach is that hosts can opt not to broadcast the despawn at this point leaving the summon in everyones world except theirs and that of the person requesting the despawn. But I am not sure what to do about this ๐Ÿคท.

  • A client should send a message to request despawn of their summons.
  • A client should immediately despawn the summons on their end as the host can deny broadcasting this event.
  • A host should handle the despawn request and validate it.
  • A host should, if a valid despawn request was sent, despawn the summons and broadcast a message to inform clients of the despawn.
  • A client should handle this despawn message and despawn the summons locally.

Hook SteamAPI_Init instead of long-polling the steam user pipe

Currently there's a while loop that polls the steam user pipe availability. Instead it might be beter to move init to a hook of SteamAPI_Init and do mod construction from there.

The location of the SteamAPI_Init can be found by inspecting exported symbols in the steam_api64.dll module. Making for a hook that shouldn't break across version changes.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.