blob: 92f91d790e12003b24fa248f97188542bd323e9f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
# Attorney Online
  <br>
[Attorney Online](https://aceattorneyonline.com) is a world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format.
**[Refer to the docs](https://github.com/AttorneyOnline/docs/blob/master/docs/index.md) for more information.**
## Setting up for development
### Prerequisites
Unix-like systems will expect a C toolchain, installed using eg.:
Ubuntu: `sudo apt install build-essential`
macOS: `xcode-select --install`
You may also need openGL libraries to compile QApng, eg:
Ubuntu: `sudo apt install libgl1-mesa-dev`
macOS: `brew install glfw glew`
### Setup
This program's main dependency is Qt and the currently recommended version for development is **6.5.3**. See [this link](https://doc.qt.io/qt-6/qt-online-installation.html)
on how to install Qt. You will need to check off the following under "Additional Libraries":
- Qt Image formats
- Qt WebSockets
Under "Developer and Designer tools", you may also want to check off:
- CMake
- Ninja
- If you're on Windows, a toolchain (MinGW)
Assuming all this is in place, you should be able to run `configure.sh` to generate the necessary build files.
This also compiles the program and shows a cmake command that can be used to recreate the build files.
### Content
To test key features, you may need the vanilla base content, which is not included in this repository.
You can get it from https://ao-dl.b-cdn.net/vanilla_full_2024_8_2.zip
This should be put in `./bin/base`
### Formatting
All code should be formatted according to the `.clang-format` file.
This will be checked by CI and will fail if the code is not formatted correctly.
## Running Tests
Running tests requires Catch2 and cmake
```sh
mkdir cbuild && cd cbuild
cmake ..
make test
# usage: run all tests
./test/test
# usage: Optionally specify tests and success verbosity
./test/test [bass] --success
```
`[noci]` tag is used to disable a test on GitHub actions
## Credits
The original Attorney Online client was created by FanatSors.
This is an open-source remake of that client created by OmniTroid.
The logo (`logo.png` and `logo.ico`) was designed by Lucas CarbĂ. The characters depicted in the logo are owned by Capcom.
## Copyright
The project is licensed under the GPLv3 license.
Code that was released under the MIT/GPLv3 dual-license can be found [here](https://github.com/AttorneyOnline/AO2-Client/tree/last-dual-licensed).
Copyright (c) 2016-2018 OmniTroid
Modifications copyright (c) 2017-2018 oldmud0
Case Café additions copyright (c) 2018 Cerapter
Killing Fever Online additions copyright (c) 2019 Crystalwarrior
## Contact
You can find us in the official Attorney Online Discord server: https://discord.gg/wWvQ3pw
|