{"id":15047122,"url":"https://github.com/times-0/times","last_synced_at":"2025-10-04T05:31:49.105Z","repository":{"id":89929491,"uuid":"57016345","full_name":"Times-0/Times","owner":"Times-0","description":"Emulator for AS3 CPPS. Written in C#. View the docs in https://times-0.github.io/Times/","archived":true,"fork":false,"pushed_at":"2018-04-09T14:56:09.000Z","size":838,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"world","last_synced_at":"2025-01-23T03:33:00.809Z","etag":null,"topics":["as3","cpps","emulator","mysql","packets","times"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Times-0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-04-25T06:15:45.000Z","updated_at":"2023-01-28T19:57:42.000Z","dependencies_parsed_at":"2023-05-30T13:45:40.239Z","dependency_job_id":null,"html_url":"https://github.com/Times-0/Times","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Times-0/Times","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Times-0%2FTimes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Times-0%2FTimes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Times-0%2FTimes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Times-0%2FTimes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Times-0","download_url":"https://codeload.github.com/Times-0/Times/tar.gz/refs/heads/world","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Times-0%2FTimes/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278267512,"owners_count":25958881,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["as3","cpps","emulator","mysql","packets","times"],"created_at":"2024-09-24T20:54:35.542Z","updated_at":"2025-10-04T05:31:49.090Z","avatar_url":"https://github.com/Times-0.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Times - Server [World] ##\nAn C# Event driven, multi threaded AS3 CPPS Emulator.\nThis is world/game server, check other branches for other types of server.\n\n\nTHIS IS FOR THE WORLD SERVER. View more branches for different types of server.\n\nVisit https://times-0.github.io/Times/ To view Times docs.\n## Usage ##\n - All you need to do is, add this file to your C# Solution.\n \n## SETUP ##\n - Then, to get the debug available you must implement your-wished custom Debug-handler, and catch the debug events using *Log \u003e Debugger* class.\n - You must also specify the type of server, you are running. Either a Login or World or Redeem server. Currently this has no advantage of multi-server processing.\n - You need to create a new solution, or compile this once-again to create another type of server. The Server-type can be changed in *Shell.cs* \n \n## Handling Packets and Custom-callback handlers ##\nThis uses a custom event based class, that handles all the Packet-event received. If any packet is malformed or not recognized, anything than XT and XML Type ain't recognized the server will kick the user. \nAll the packets are received by an async loop that runs parallel with every other penguins connected. \nThis server, converts all packet received into a special format, to handle that packets, as mentioned in *Packets.cs*:\n - **XT** : *Format = #xtCATEGORY-HANDLER/*, where category is like \"s\", \"z\", and handler is for example, \"j#jr\", \"j#js\" etc..,.\n - **XML** : *Format = #xmlACTION/*, where ACTION is the attribute \"action\" contained in \"body\" tag.\n\nThe handler will then call the function, which corresponds to the callback-format as said above. The callback method will be given the following parameters resp,\n\n```\nEvent = {type=callback-name, client=penguin.cs class}, vars = For XT, the remainig vars after \"-1 or intid\"; for XML, the body tag-class itself.\n```\n\nYou no need to import the classes that handles callback. All you need to do is, create a new .cs file in *Client/Dependencies* and the Server will auto add it in runtime. LoginHandler is one of the example. \n\n## DEPENDENCIES ##\n\n - [XmlToDynamic](https://github.com/jonathanconway/XmlToDynamic/)\n - MySQL :: Data, auto-installed when installed MySQL in PC\n - .NET Framework 4 +, install the latest if you have anything lesser than 4.\n - MS Linq\n - XMLSerializer :: Linq, add to reference if not available\n - Sockets, auto added in reference.\n\n## STARTING THE SERVER ##\nFirst of all you have to do this to init a server.\n```\nvar worldServer = new Airtower(\"IP/HOST NAME\", port);\nvar Shell = new Shell();\n```\n\nNext, do all the remaining stuffs you need to setup before you start the server. Then atlast, to start the server execute.\n```\nworldServer.startConnection();\n```\n\n## CONTRIBUTION ##\nFeel free to contribute anything to this server. It can be any bugs, glitch fixes, updates, security improvement, handlers, ideas, performance fixes, etc..,.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimes-0%2Ftimes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftimes-0%2Ftimes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimes-0%2Ftimes/lists"}