310 Commits

Author SHA1 Message Date
f281b4da6a Update .gitea/workflows/build-and-publish.yaml 2025-03-08 01:15:15 -08:00
2d59e33c0d Update .gitea/workflows/build-and-publish.yaml 2025-03-08 01:13:10 -08:00
c96e8c84dc Update .gitea/workflows/build-and-publish.yaml 2025-03-08 01:11:24 -08:00
a6aedd411a Update .gitea/workflows/build-and-publish.yaml 2025-03-08 01:11:14 -08:00
9a43abad54 Add .gitea/workflows/build-and-publish.yaml 2025-03-08 01:11:02 -08:00
d2e6423831 Delete .gitea/gitea-ci.yaml 2025-03-08 01:10:40 -08:00
c8217950da Add .gitea/gitea-ci.yaml 2025-03-08 01:05:27 -08:00
290ff9c577 Merge pull request 'Buddy System' (#3) from buddies into master
Reviewed-on: https://gitea.milenia.local.alanmoon.net/Moonbase/jumpstart-games-reduxed/pulls/3
2025-03-07 18:20:39 -08:00
2e70d89ddb Merge pull request 'Messaging System' (#2) from messaging into master
Reviewed-on: https://gitea.milenia.local.alanmoon.net/Moonbase/jumpstart-games-reduxed/pulls/2
2025-03-07 18:19:53 -08:00
e0c1d2cab2 precense fixes 2025-03-07 18:13:17 -08:00
ded2acc5ca implement precense endpoint 2025-03-07 17:42:44 -08:00
44aa98ef3a implement buddy codes 2025-03-07 17:20:27 -08:00
c285eb31b9 Update README.md 2025-03-07 14:03:05 -08:00
08541ea377 Update README.md 2025-03-07 14:00:30 -08:00
5d0cb1581d further system message fixes 2025-03-06 17:48:08 -08:00
20452e2058 make author viking optional for system messages 2025-03-06 15:42:45 -08:00
b090604bc1 add message for earning xp (wojs) 2025-03-06 12:35:25 -08:00
7e29d5cd4a add system message support 2025-03-06 12:01:37 -08:00
c8c70b220e revert nullable `ToVikingId` 2025-03-06 11:49:59 -08:00
6c31296d3b make `ToVikingId` nullable for system messages 2025-03-06 11:45:50 -08:00
b7b99cd353 add `IsPrivate field to Message` 2025-03-06 11:33:08 -08:00
c37a719aad add `Id field to Buddy` 2025-03-06 11:04:24 -08:00
3ba60972ad fix best buddy set 2025-03-06 10:59:13 -08:00
6deebb947b implement `UpdateBestBuddy` 2025-03-06 10:52:16 -08:00
5bd62186f0 implement `RemoveBuddy`
modify ``SendMessage``
add message of typeid 21 when reply is made
reworks some things in ``BuddyService``
2025-03-03 17:00:58 -08:00
684e8691d8 implement `AddBuddy and ApproveBuddy` 2025-03-03 13:39:56 -08:00
6ede8af204 implement `BuddyService`
add ``CreatedAt`` to ``Buddy`` model
add missing schemas
2025-03-03 13:29:34 -08:00
a3ba9556d0 data model fix 2025-03-03 12:42:49 -08:00
21b7cd9694 initial data model work 2025-03-03 12:35:08 -08:00
4922223bb2 fix issues with replies 2025-03-02 19:56:11 -08:00
157f8fc455 implement endpoints in `MessagingController` 2025-03-02 18:52:22 -08:00
c53b6b9348 implement `MessagingService`
add additional messaging schemas
2025-03-02 18:20:35 -08:00
6ad779058e Update README.md 2025-03-02 16:37:59 -08:00
1ca53d580f reference `Microsoft.EntityFrameworkCore.Design` for database version control
add initial migration
2025-03-02 16:29:25 -08:00
7e406fd1b1 initial data model work 2025-03-02 16:21:10 -08:00
ee7edd5145 Merge pull request 'Basic Moderation System' (#1) from moderation into master
Reviewed-on: https://gitea.milenia.local.alanmoon.net/Moonbase/sodoff/pulls/1
2025-03-02 16:05:53 -08:00
3f408bbae6 change response in `AddBanToViking` 2025-03-02 15:58:42 -08:00
3ff5c729e7 add `ModerationService` to service list 2025-02-27 18:56:48 -08:00
ff4e8c39cd change to `HttpPost` 2025-02-27 18:01:54 -08:00
df4c7e4017 introduce `Internal` namespace
implement ``ModerationController``
2025-02-27 14:50:46 -08:00
3800fc49c8 implement `ModerationService`
add type ``NotBanned`` to ``UserBanType`` enum
2025-02-26 14:00:27 -08:00
54307d7582 initial data model work 2025-02-26 13:04:50 -08:00
Robert Paciorek
3222c63fa6 fix reward for "Photo Mode - Sunset (Back)"
set reward like for other photo missions (500 dragon XP, 100 viking XP)
to avoid wrong client side reward calculation while repeat this missions
2025-02-22 19:31:14 +00:00
Robert Paciorek
3229464c02 correct handling adding XP in child->titan levelup
(this can happen with a quick conversion child->adult->titan, wrong order of `SetRaisedPet` requests or missed request)
2025-02-19 18:37:08 +00:00
Robert Paciorek
4b2fefc492 multiple SoD small fixes
* add night lights hats and cropped hair to store
* re-add dragon nip to play tools menu
* add axe as reward from 1.x tutorial (fixes "lost axe" issue while leave game during wilderness training mission)
2025-02-13 23:10:08 +00:00
YoshiCraft64
cecaa50610
support for old ("steps") missions (#20)
* add support for old missions API (aka "steps missions")
* config option to disable loading non SoD Data (used only for missions and achievements for now)
* make AuthenticateUser endpoint compatible with games that use e-mail as login
* add api keys for lands
* add GetGameCurrency endpoint
* allow create empty stores and add store "8" (empty)

---------

Co-authored-by: Robert Paciorek <robert@opcode.eu.org>
2025-02-13 22:58:19 +01:00
Robert Paciorek
13df822608 rework achievements system + minor cleanup
rework achievements system:
    - support for Achievements page in journal
    - register achievement tasks in database to avoid duplicate rewards and to register progress (achievement levels)
    - better achievement tasks xml database (for multiple games)
    - support for older games SetUserAchievementTask (V1)
    - add some missed achievement IDs
    - move achievement data to Resources/achievements/

additionally:
    - add mmo zones for MaM and some additional mmo zones for EMD
    - move missions Resources into Resources/missions/
    - split SoD/MaM missions into separte files
    - move rank data to Resources/ranks/
    - cleanup sodoff.csproj

SQLite database schema changes:

```
CREATE TABLE "AchievementTaskState" (
	"VikingId"	INTEGER NOT NULL,
	"TaskId"	INTEGER NOT NULL,
	"Points"	INTEGER NOT NULL,
	CONSTRAINT "PK_AchievementTaskState" PRIMARY KEY("TaskId","VikingId"),
	CONSTRAINT "FK_AchievementTaskState_Vikings_VikingId" FOREIGN KEY("VikingId") REFERENCES "Vikings"("Id") ON DELETE CASCADE
);
```
2025-02-08 10:29:56 +00:00
Hipposgrumm
24695583b3
Rating for Pods, Games, and (probably) other stuff (#16)
Implements the rating system.

Shipwreck Lagoon tracks theoretically work, but there's currently no way of testing them.
There is a hack to make the ranked pods section of the blaster party board work. Don't know if that'll cause any issues (but I don't think so).

SQLite database schema changes:

```sql
CREATE TABLE "RatingRanks" (
	"Id"	INTEGER NOT NULL,
	"CategoryID"	INTEGER NOT NULL,
	"RatedEntityID"	INTEGER,
	"RatedUserID"	TEXT,
	"Rank"	INTEGER NOT NULL,
	"RatingAverage"	REAL NOT NULL,
	"UpdateDate"	TEXT NOT NULL,
	CONSTRAINT "PK_RatingRanks" PRIMARY KEY("Id" AUTOINCREMENT)
);
CREATE TABLE "Ratings" (
	"Id"	INTEGER NOT NULL,
	"VikingId"	INTEGER NOT NULL,
	"RankId"	INTEGER NOT NULL,
	"Value"	INTEGER NOT NULL,
	"Date"	TEXT NOT NULL,
	CONSTRAINT "FK_Ratings_RatingRanks_RankId" FOREIGN KEY("RankId") REFERENCES "RatingRanks"("Id") ON DELETE CASCADE,
	CONSTRAINT "PK_Ratings" PRIMARY KEY("Id" AUTOINCREMENT),
	CONSTRAINT "FK_Ratings_Vikings_VikingId" FOREIGN KEY("VikingId") REFERENCES "Vikings"("Id") ON DELETE CASCADE
);
```

---------

Co-authored-by: Robert Paciorek <robert@opcode.eu.org>
2025-02-08 10:19:43 +01:00
ABrokenTV
c1d6850867
Add "Land" Payouts to RatingController.cs (#17)
Added payouts for Adventureland, Marineland, and Futureland, from "Lost Island Training" standalone port.
2025-02-07 17:12:07 +01:00
YesntSoup
1f3b5386e6
Add separate Ridez and Petz stores for old WoJS
... and add all Ridez to that store (#18)
2025-02-07 17:10:40 +01:00