Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP][core] Dummy character system #608

Closed
wants to merge 1 commit into from

Conversation

zach2good
Copy link
Contributor

image
image

Concept

  • Creepy mannequin heads, random faces, random sex/races.
  • Player characters, with their packet queues blocked off, with random pathfinding controllers.
  • Generate packets for real players to observe and measure improvements to packet system.
  • Kinda nice to see lots of player-ish things running around in city zones

I affirm:

  • I have paid attention to this example and will edit again if need be to not break the formatting, or I will be ignored
  • that I agree to LandSandBoat's Limited Contributor License Agreement, as written on this date
  • that I have read the Contributing Guide
  • that I've tested my code and things my code changed since the last commit in the PR, and will test after any later commits

Comment on lines +313 to +320
virtual void clearPacketList(); // отчистка PacketList
virtual void pushPacket(CBasicPacket*); // добавление копии пакета в PacketList
virtual void pushPacket(std::unique_ptr<CBasicPacket>); // push packet to packet list
virtual bool isPacketListEmpty(); // проверка размера PacketList
virtual auto popPacket() -> CBasicPacket*; // получение первого пакета из PacketList
virtual auto getPacketList() -> PacketList_t; // returns a COPY of packet list
virtual auto getPacketCount() -> size_t;
virtual void erasePackets(uint8 num); // erase num elements from front of packet list
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: What is the performance penalty here, probably pretty bad...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we store all of these in a separate object? ie: CCharEntity has a member: std::unique_ptr<CPacketListContainer> which we populate on CCharEntity contruction, but we set as nullptr for dummies. Think pImp pattern?

@zach2good
Copy link
Contributor Author

Don't think I ever want this to make it into the actual codebase. Will save the patch and write an article about it

@zach2good zach2good closed this Mar 5, 2022
@zach2good
Copy link
Contributor Author

Article, linked from the development wiki page:
https://github.com/LandSandBoat/server/wiki/Dummy-System

@zach2good zach2good deleted the dummy_system branch March 5, 2022 11:09
The-Aerec added a commit to The-Aerec/LSB that referenced this pull request Nov 7, 2022
Adjusts mobType bits as well as addresses mobwsprep function.
@zanglikun
Copy link

it will be merg to master banch?

@zach2good
Copy link
Contributor Author

No, this was just a proof of concept, it'll never be merged into master/base

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants