Merge branch 'develop' into idac

This commit is contained in:
Dniel97
2026-08-02 22:17:25 +02:00
6 changed files with 25 additions and 7 deletions
+9
View File
@@ -1,6 +1,15 @@
# Changelog
Documenting updates to ARTEMiS, to be updated every time the master branch is pushed to.
## 20260801
+ CHUNITHM X-VERSE support added
+ maimai DX support for BUDDiES PLUS, PRiSM, and PRiSM PLUS added
+ Pokken's default configuration has been fixed
+ SAO fixes have been backported from a different project
+ Support for CHN region games has been added
+ Many, MANY miscilanious changes
+ + Huge thanks to our many wonderful contributors who have been keeping ARTEMiS alive and running!
## 20260606
+ Initial D THE ARCADE Season 3 (2.10) support added
+11 -2
View File
@@ -1,6 +1,8 @@
import hashlib
import json
import logging
import secrets
import string
from enum import Enum
from logging.handlers import TimedRotatingFileHandler
@@ -69,10 +71,15 @@ class ChimeServlet:
async def handle_qr_alive(self, request: Request):
return PlainTextResponse("alive")
def _generate_token(self) -> str:
alphabet = string.ascii_letters + string.digits
return ''.join(secrets.choice(alphabet) for _ in range(20))
async def handle_qr_lookup(self, request: Request) -> bytes:
req = json.loads(await request.body())
access_code = req["qrCode"][-20:]
timestamp = req["timestamp"]
token = self._generate_token()
try:
userId = await self._lookup(access_code)
@@ -80,7 +87,8 @@ class ChimeServlet:
"userID": userId,
"errorID": 0,
"timestamp": timestamp,
"key": self._hash_key(userId, timestamp)
"key": self._hash_key(userId, timestamp),
"token": token
})
except Exception as e:
@@ -90,7 +98,8 @@ class ChimeServlet:
"userID": -1,
"errorID": ChimeDBStatus.DB_ACCESS_FAIL,
"timestamp": timestamp,
"key": self._hash_key(-1, timestamp)
"key": self._hash_key(-1, timestamp),
"token": token
})
return PlainTextResponse(data)
+2 -2
View File
@@ -966,7 +966,7 @@ Config file is `pokken.yaml`
| `loglevel` | String indicating how verbose pokken logs should be. Acceptable values are `debug`, `info`, `warn`, and `error`. | `info` |
| `auto_register` | For games that don't use aimedb, this controls weather connecting cards that aren't registered should automatically be registered when making a profile. Set to `False` to require cards be already registered before being usable with Pokken. | `True` |
| `enable_matching` | If `True`, allow non-local matching. This doesn't currently work because BIWA, the matching protocol the game uses, is not understood, so this should be set to `False`. | `False` |
| `stun_server_host` | Hostname of the STUN server the game will use for matching. | `stunserver.stunprotocol.org` (might not work anymore? recomend changing) |
| `stun_server_host` | Hostname of the STUN server the game will use for matching. | `stunserver2025.stunprotocol.org` |
| `stun_server_port` | Port for the external STUN server. Will probably be moved to the `ports` section in the future. | `3478` |
#### ports
@@ -1010,7 +1010,7 @@ server:
loglevel: "info"
auto_register: True
enable_matching: False
stun_server_host: "stunserver.stunprotocol.org"
stun_server_host: "stunserver2025.stunprotocol.org"
stun_server_port: 3478
ports:
+1 -1
View File
@@ -4,7 +4,7 @@ server:
loglevel: "info"
auto_register: True
enable_matching: False
stun_server_host: "stunserver.stunprotocol.org"
stun_server_host: "stunserver2025.stunprotocol.org"
stun_server_port: 3478
ports:
+1 -1
View File
@@ -76,7 +76,7 @@ class PokkenBase:
"addr": self.game_cfg.server.stun_server_host,
"port": self.game_cfg.server.stun_server_port,
},
"AdmissionUrl": f"ws://{self.game_cfg.server.hostname}:{self.game_cfg.ports.admission}/pokken/admission",
"AdmissionUrl": f"wss://{self.game_cfg.server.hostname}:{self.game_cfg.ports.admission}/pokken/admission",
"locationId": locid,
"logfilename": "J:\\JackalMatchingLibrary.log",
"biwalogfilename": "J:\\biwa_log.log",
+1 -1
View File
@@ -50,7 +50,7 @@ class PokkenServerConfig:
Hostname of the EXTERNAL stun server the game should connect to. This is not handled by artemis.
"""
return CoreConfig.get_config_field(
self.__config, "pokken", "server", "stun_server_host", default="stunserver.stunprotocol.org"
self.__config, "pokken", "server", "stun_server_host", default="stunserver2025.stunprotocol.org"
)
@property