Burgershot
  • Home
  • Members
  • Team
  • Help
  • Search
  • Register
  • Login
  • Home
  • Members
  • Help
  • Search
Burgershot SA-MP Releases Plugins [Plugin] samp-precise-timers ⌚: A timer plugin written in Rust

 
  • 1 Vote(s) - 5 Average
Plugin samp-precise-timers ⌚: A timer plugin written in Rust
bmisiak
Offline

Burgershot Member
Posts: 2
Threads: 1
Joined: May 2019
Reputation: 6
Location: San Francisco
#1
2019-05-21, 05:36 AM (This post was last modified: 2019-05-21, 05:38 AM by bmisiak.)
samp-precise-timers ⌚
github.com/bmisiak/samp-precise-timers


Briefly
Developed for net4game.com (RolePlay), this plugin provides precise timers for the server. It is written in Rust, a memory-safe language.

Why rewrite timers?
I had a lot of safety concerns with some of the existing solutions. They weren't written with data integrity, memory safety or preventing server crashes in mind and seemed to have quite a few bugs. As privacy and safety is our primary concern at net4game, I wrote this in Rust, which combines high-level ergonomics with the performance of a low-level language. ⚡

Please check out the code to see the benefits. You might like Rust a lot. The code is much simpler than C++ equivalents, especially the ones which still use *char, free() and delete[] instead of modern C++ idioms such as std::unique_ptr, but as Rust has no runtime, there is no overhead 😉

We would like your help! 💃
Oh, and if you enjoy working on servers, we are looking for a team to help our international expansion. 🎉  net4game has been around for a decade as the biggest Polish server. We introduced a lot of innovations over the years and we are almost ready to become international. Shoot me an e-mail at [email protected] if you're interested.

Downloads on GitHub
Also available on sampctl as
Code:
bmisiak/samp-precise-timers

On top of all of the above, I would love to help with developing open.mp!
JustMichael
Offline

Forum Manager

Posts: 189
Threads: 3
Joined: Feb 2019
Reputation: 17
Location: England
#2
2019-05-21, 05:41 AM
Finally made it over here, huh? :D

Nice work, especially since it's written in Rust uwu
Remember to always refer to J0sh as `J0sh...`

@ Networks/Servers
San Andreas Gaming Network (Owner/Founder)
San Andreas Gaming (Owner/Founder)
Grand Theft Cop's n Robber's (Owner)
Britannia Roleplay (Owner/Founder)
Alpine RP (Owner/Founder)
Aluminium Network (Maintainer)
AlphaDM (Tech Support)

# Services
Burgershot.gg (Forum Manager)
open.mp (Member)

~ Languages/Frameworks
Pawn, C, C++, C#, Javascript, Typescript, Lua, Python, Go, Rust, PHP, SQL,
Angular, React, Vue, Svelte, Laravel, Rocket
hual
Offline

King

Posts: 106
Threads: 3
Joined: Feb 2019
Reputation: 7
Location: Bulgaria
#3
2019-05-21, 07:46 AM
Welcome, Misiek. Why not drop by our Discord as well?
Y_Less
Offline

Administrator

Posts: 323
Threads: 16
Joined: Feb 2019
Reputation: 90
#4
2019-05-21, 10:59 AM
Very nice.I'm impressed by how simple the code is compared to other versions.
ohmios
Offline

Burgershot Member
Posts: 34
Threads: 2
Joined: Apr 2019
Reputation: 1
#5
2019-05-21, 11:27 AM
(2019-05-21, 05:36 AM)bmisiak Wrote: Oh, and if you enjoy working on servers, we are looking for a team to help our international expansion.

Great! And you have a mumble server too! I wish I knew Polish :(
Toretto
Offline

Moderator

Posts: 40
Threads: 1
Joined: Apr 2019
Reputation: 4
#6
2019-05-21, 12:40 PM
I don't know Rust, but the code is self-explanatory by reading the comments, great job!
SyS
Offline

Burgershot Member
Posts: 37
Threads: 5
Joined: Apr 2019
Reputation: 4
#7
2019-05-21, 01:44 PM
Nice!
ShowTime
Offline

Burgershot Member
Posts: 2
Threads: 1
Joined: May 2019
Reputation: 1
Location: Poland
#8
2019-05-21, 06:05 PM (This post was last modified: 2019-05-21, 06:10 PM by ShowTime.)
Finally, here’s a great plugin! Nice job 💪
Kar
Offline

open.mp Developer

Posts: 35
Threads: 2
Joined: Feb 2019
Reputation: 5
#9
2019-05-21, 06:43 PM
Think I'll try it out.
Kar's Cops And Robbers
https://lvcnr.net
samp://server.lvcnr.net
https://discord.me/kcnr
Gudio
Offline

Burgershot Member
Posts: 1
Threads: 0
Joined: May 2019
Reputation: 0
#10
2019-05-21, 06:54 PM
Great job! ;>
bmisiak
Offline

Burgershot Member
Posts: 2
Threads: 1
Joined: May 2019
Reputation: 6
Location: San Francisco
#11
2019-05-21, 07:12 PM
Thanks y'all! Definitely looking for some feedback. 😉

(2019-05-21, 11:27 AM)ohmios Wrote: Great! And you have a mumble server too! I wish I knew Polish :(
FOSS all the way! Obviously for the international expansion we will need people who speak English, not Polish, so this is not a concern! 👍
Hoxxy
Offline

Burgershot Member
Posts: 1
Threads: 0
Joined: Apr 2019
Reputation: 0
Location: Serbia
#12
2019-05-22, 10:09 AM (This post was last modified: 2019-05-22, 10:11 AM by Hoxxy.)
There seems to be a problem with the Linux version.


Code:
[sampgdk:warning] Native function not found: GetPlayerInterior
[sampgdk:warning] Native function not found: GetPlayerVirtualWorld
[sampgdk:warning] Native function not found: GetPlayerState

This only happens when loading this plugin and only on Linux.
Other plugins I use and their order is as follows: crashdetect.so mysql.so samp-previse-timers.so sscanf.so streamer.so regex.so
All of them are on their latest versions.
Markski
Offline

Burgershot Clerk

Posts: 127
Threads: 6
Joined: Apr 2019
Reputation: 5
Location: La Plata, Argentina
#13
2019-06-04, 12:11 PM (This post was last modified: 2019-06-04, 12:35 PM by Markski.)
A small benchmark of this plugin.

https://gist.github.com/markski1/13444efd17e8e6d6637e10f186fafd0f

Might be the most accurate and consistent timer option, even than timerfix. Good job.
Website
6cadilab9
Offline

Burgershot Member
Posts: 44
Threads: 4
Joined: Apr 2019
Reputation: 0
Location: Banja Luka
#14
2019-07-29, 08:02 AM
(2019-05-22, 10:09 AM)Hoxxy Wrote: There seems to be a problem with the Linux version.


Code:
[sampgdk:warning] Native function not found: GetPlayerInterior
[sampgdk:warning] Native function not found: GetPlayerVirtualWorld
[sampgdk:warning] Native function not found: GetPlayerState

This only happens when loading this plugin and only on Linux.
Other plugins I use and their order is as follows: crashdetect.so mysql.so samp-previse-timers.so sscanf.so streamer.so regex.so
All of them are on their latest versions.

Yes this started happening to me since I moved to this plugin, at first I thought that the streamer was causing the problem, but now..
I'm getting:

[sampgdk:warning] Native function not found: DeletePlayer3DTextLabel
RogueDrifter
Offline

Burgershot Member
Posts: 16
Threads: 6
Joined: Apr 2019
Reputation: 1
Location: Canada
#15
2019-07-29, 11:20 AM (This post was last modified: 2019-07-29, 11:20 AM by RogueDrifter.)
For some reason, sometimes the timers are never placed, mostly when it's deleted and replaced.
Logan
Offline

Burgershot Member
Posts: 21
Threads: 5
Joined: Jun 2019
Reputation: 1
Location: Croatia
#16
2019-09-09, 10:04 PM
(2019-07-29, 11:20 AM)RogueDrifter Wrote: For some reason, sometimes the timers are never placed, mostly when it's deleted and replaced.
True, haven't got time to figure it out so I switched back to settimer. But after some time it started wierding up and not even starting timers.
Hype Away

Burgershot Member
Posts: 19
Threads: 4
Joined: May 2019
Reputation: 0
Location: Grove street, home.
#17
2020-05-18, 01:25 PM
Nice Misiak, I appreciate your honest work!
Love from Poland :)))
« Next Oldest | Next Newest »



  • View a Printable Version
  • Subscribe to this thread
Forum Jump:

© Burgershot - Powered by our Community and MyBB Original Theme by Emerald

Linear Mode
Threaded Mode